一行文本向一个方向对齐,多行文本向另一个方向对齐
2019-09-27 本文已影响0人
percykuang
前言: 最近做一个聊天App时刚好做到消息对话框部分,要做的需求就是当我向对方发送消息时,如果文字内容仅为一行,则靠右显示,但是如果文字内容多行时,则要让最后一行靠左显示,这个时候就要调css了,一种我认为挺优雅的方式如下。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<style>
/*当文字为一行是,则P的宽度小于div的宽度,p标签靠右显示在盒子内,文字也就靠右了 ;当大于一行时,P的宽度和div的宽度是一致的 ,文字就居左对齐了*/
.content {
width: 200px;
border: 1px solid #ee2415;
text-align: right;
padding: 2px 5px
}
/*display: inline-block使P的宽度根据文字的宽度伸缩 */
.content p {
text-align: left;
display: inline-block;
}
</style>
<body>
<div class="content">
<p>内容只有一行靠右</p>
</div>
<br>
<div class="content">
<p>内容多行左对齐,内容多行左对齐</p>
</div>
</body>
</html>
效果:
1.png