JSFiddle - React, Tailwind, and code Playground
by Jay Angelo Valmocina
HTML
<h2>Chat Messages</h2>
<div class="container">
<img src="https://i.pinimg.com/originals/a3/90/99/a3909901b4351184cccbe57ff83adb67.jpg" alt="Avatar">
<p>Konichiwa?
Genki desu ka?</p>
<span class="time-right">11:00</span>
</div>
<div class="container darker">
<img
src="https://i.pinimg.com/236x/c0/b1/a6/c0b1a646ac224a4f07a6f20f04bf3d77.jpg" alt="Avatar" class="right">
<p>Hai! Genki desu.</p>
<span class="time-left">11:01</span>
</div>
<textarea></textarea>
<div class="textarea-with-button">
<div class="textarea" contenteditable="true">
</div>
<button class="plus">+</button>
</div>
CSS
@import url('https://fonts.googleapis.com/css?family=Roboto+Slab&display=swap');
body {
margin: 0 auto;
max-width: 800px;
padding: 0 20px;
font-family: 'Roboto Slab', serif;
}
img {
width: 100%;
}
.container {
border: 2px solid #dedede;
background-color: #ffffff;
border-radius: 6px;
padding: 12px;
margin: 12px 0;
color: #2c3e50;
}
.darker {
border: 2px solid #dedede;
/* background-color: #dfe4ea; */
/* color: #2c3e50; */
color: #fafafa;
background: #12c2e9; /* fallback for old browsers */
background: -webkit-linear-gradient(to right, #12c2e9, #c471ed, #f64f59); /* Chrome 10-25, Safari 5.1-6 */
background: linear-gradient(to right, #12c2e9, #c471ed, #f64f59); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}
.container::after {
content: "";
clear: both;
display: table;
}
.container img {
float: left;
max-width: 60px;
width: 100%;
margin-right: 20px;
border-radius: 30%;
}
.container img.right {
float: right;
margin-left: 20px;
margin-right:0;
}
.time-right {
float: right;
color:
#2c3e50
}
.time-left {
float: left;
/* color: #2c3e50; */
color: #fafafa;
}
textarea {
border: 2px solid #5555;
border-radius: 6px;
padding: 10px;
font-family: 'Roboto Slab', serif;
font-size: 15px;
box-sizing: border-box;
width: 100%;
height:150px;
resize: none;
overflow-y: hidden;
transition:box-shadow 0.5s ease;
box-shadow:0 4px 6px rgba(0,0,0,0.1);
}
textarea:focus {
outline: none;
}
.textarea:focus {
outline: none;
}
.textarea {
border: tranparent;
padding: 10px;
width: 100%;
}
.textarea-with-button {
border: 1px solid #6666;
padding: 30px;
display: flex;
transition:box-shadow 0.5s ease;
box-shadow:0 4px 6px rgba(0,0,0,0.1);
}
.plus {
border: 1px solid #1e90ff;
background: #1e90ff;
color: #fafafa;
}