1.实现文本单行不换行,超出部分截断并末尾添加…
注意 必须设定盒子固定宽度;如果宽度设置百分比,则父布局的宽度必须设定,否则设置百分比不生效。
width: 100px;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
2.控制盒子固定行数显示文本
2.1 第一种方式 使用浏览器扩展属性 -webkit-box 实现,超出部分截断并末尾添加… 缺点:兼容性不好,有些浏览器没有实现box-flex规范
width: 200px;
display:-moz-box;
display:-webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
overflow: hidden;
2.2 第二种方式 通过设置line-height和height属性实现,height的值等于line-height*显示的行数。缺点:结尾没有… 不美观
width: 200px;
line-height: 25px;
height: 75px;
overflow:hidden;
2.3 第三种方式 使用js截断超出显示的字符并在末尾添加… 缺点:不支持盒子是弹性时的情况
<html>
<head>
<style>
.content{
width: 200px;
}
</style>
</head>
<body>
<div class="content"></div>
<script>
let brief="豫章故郡,洪都新府。星分翼轸,地接衡庐。襟三江而带五湖,控蛮荆而引瓯越。物华天宝,龙光射牛斗之墟;人杰地灵,徐孺下陈蕃之榻。"
if(brief.length>24){
brief=brief.substr(0,22)+"...";
}
document.querySelector(".content").innerHTML = brief
</script>
</body>
</html>
3.设置背景图填充元素大小
3.1 background-size 设置背景图的大小跟父布局大小相同
background-repeat: no-repeat;
background-size: 100% 100%;
background-image: url("图片地址");
4. image 标签设置图片的缩放模式
object-fit
object-fit: contain;
object-fit: cover;
object-fit: fill;
object-fit: none;
object-fit: scale-down;