JSFiddle - React, Tailwind, and code Playground
by Sergey Py
HTML
<div class='inmsg'>
<div class="inmsg__user">
<img src="https://cdn0.iconfinder.com/data/icons/users-android-l-lollipop-icon-pack/24/user-128.png" alt="юзер">
</div>
<div class="inmsg__text-wrapper">
<div class="inmsg__text">Lorem ipsum dolor sit a впа варп пар опаро рпао рлрпол рпо дрпдорлд ло орлд орлд орд iv></div>
<div class="inmsg__time">
<span>17:59</span>
</div>
</div>
<div class='outmsg'>
<div class="outmsg__text">Lorem ipsum dolor sit a</div>
<div class="outmsg__time">
<span>17:59</span>
</div>
</div>
<div class='inmsg'>
<div class="inmsg__user">
<img src="https://cdn0.iconfinder.com/data/icons/users-android-l-lollipop-icon-pack/24/user-128.png" alt="юзер">
</div>
<div class="inmsg__text-wrapper">
<div class="inmsg__text">Lorem ipsum dolor sit a</div></div>
<div class="inmsg__time">
<span>17:59</span>
</div>
</div>
CSS
*, :before, :after {
box-sizing: border-box;
}
.inmsg {
width: 100%;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
font-family: "Lucida Grande",Tahoma,Geneva,Verdana,sans-serif;
margin-bottom: 15px;
}
.inmsg__user {
width: 100px;
padding-right: 50px;
flex-shrink: 0;
}
.inmsg__user img{
width: 50px;
height: 50px;
}
.inmsg__text-wrapper {
width: 100%;
padding-right: 50px;
}
.inmsg__text {
width: auto;
position: relative;
padding: 15px;
background-color: #dcdcdc;
font-family: "Lucida Grande",Tahoma,Geneva,Verdana,sans-serif;
font-size: 14px;
line-height: 20px;
color: #727272;
}
.inmsg__text:before {
position: absolute;
width: 0;
height: 0;
left: -5px;
top: 10px;
content: '';
border-top: 5px solid transparent;
border-right: 6px solid #dcdcdc;
border-bottom: 5px solid transparent;
}
.inmsg__time {
padding-top: 13px;
padding-left: 50px;
width: 90px;
flex-shrink: 0;
text-align: right;
}
.inmsg__time span {
font-size: 12px;
line-height: 14px;
}
.outmsg {
width: 100%;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
font-family: "Lucida Grande",Tahoma,Geneva,Verdana,sans-serif;
margin-bottom: 15px;
}
.outmsg__text {
width: 100%;
position: relative;
padding: 15px;
margin-left: 140px;
background-color: #eee;
font-family: "Lucida Grande",Tahoma,Geneva,Verdana,sans-serif;
font-size: 14px;
line-height: 20px;
color: #727272;
}
.outmsg__text:before {
position: absolute;
width: 0;
height: 0;
right: -5px;
top: 10px;
content: '';
border-top: 5px solid transparent;
border-left: 6px solid #eee;
border-bottom: 5px solid transparent;
}
.outmsg__time {
padding-top: 13px;
padding-left: 50px;
width: 90px;
flex-shrink: 0;
text-align: right;
}
.outmsg__time span {
font-size: 12px;
line-height: 14px;
}