设置元素水平垂直居中N中方法
自己在实际开发中经常会遇到要水平、垂直居中一个元素,甚至是多个元素实现水平垂直居中。但是每次到用的时候都会出现这样那样的问题,很是纠结。So,我索性就狠下来心花点时间来总结一下这方面的知识,也帮助我来理解、融汇贯通。好了,废话不多说,直接看 demo。
此Demo中包括一下两点:
- 单个元素的水平垂直居中
- 多个元素的水平垂直居中
自己在实际开发中经常会遇到要水平、垂直居中一个元素,甚至是多个元素实现水平垂直居中。但是每次到用的时候都会出现这样那样的问题,很是纠结。So,我索性就狠下来心花点时间来总结一下这方面的知识,也帮助我来理解、融汇贯通。好了,废话不多说,直接看 demo。
此Demo中包括一下两点:
注意:
1.垂直对齐属性只对行内
元素有效
2.垂直对齐属性只对父级元素设置了line-height
的元素
基线对齐(vertical-align : baseline)
中间对齐(vertical-align : middle)
基线
行高
行距
内容区
行内框
行框(line box)
行高继承
行高的计算
实现方法:
<div class="triangle"></div> |
.triangle-all{ width: 0; height: 0; border-width: 30px; border-style: solid; border-color: #c03 #fc0 #69c #6c6;/* 红 黄 蓝 绿 */ } |
效 果 图
实现方法:
<div class="triangle-all"></div> |
.triangle_down{ width:0; height:0; border-width:30px 30px 0; border-style:solid; border-color:#c03 transparent transparent ;/* 红 透明 透明 */ } |
效 果 图
实现方法
<div class="triangle-tip-up"></div> |
.triangle-tip-up{ width: 200px; height: 30px; background:#3FB58E; border-radius: 4px; position: relative; } .triangle-tip-up:before{ content:''; width: 0; height: 0; border-width: 0 10px 10px; border-style: solid; border-color: transparent transparent #3FB58E; position: absolute; left: 80px; top: -10px; } |
实现原理
实现方法
<div class="triangle-scalene"></div> |
.triangle-scalene{ width: 0; height: 0; border-width: 0 0 60px 20px;/* 设置对角和相邻的border都为0来实现不规则效果 */ border-style: solid; border-color: transparent transparent #69c; } |
实现原理