各种居中系列
2016-02-18 10:34
537 查看
方法①:
方法②:
方法③:
方法④:table表格
方法⑤:模拟表格渲染 (关键字
方法⑥:负边距+绝对定位 此方法为杀手锏 (将父元素相对定位
方法⑦:transform居中 (这个是针对不定宽的元素要居中使用的方法) 它配合方法⑥中的绝对定位具体体现,比如上次我遇到的水平垂直居中一个checkbox,宽度不定就使用此方法
方法⑧:css3_flex (此方法自己也不太熟悉,所以转了个网友的方法)
常见的面试水平垂直居中问题:
1.水平垂直居中一个浮动元素 (方法⑥->负边距+绝对定位)
2.水平垂直居中一个
3.水平垂直居中一个行内元素 (方法②+方法③->父元素中text-align:center;line-height:固定高度)
欢迎大家指出错误 共同学习 Caristop3
margin:0 auto实现水平居中(必须满足的条件是固定宽度元素)
方法②:
text-align:center实现水平居中(测试后在父元素中设置,块级或行内元素可实现,除图片
<img>外。其中若父级为块级,子元素也为块级则设置子元素
display:inline-block)
方法③:
line-height:自身高度实现垂直居中
方法④:table表格
<td>标签中默认垂直居中,若设置
text-align:center在ie6,ie7能水平垂直居中,但在ie8+、主流浏览器中的块级元素则无效果,但若将此块级元素设置
display:inline-block可实现
方法⑤:模拟表格渲染 (关键字
display:table-cell) 实现水平垂直居中
<div id="container"> <div id="content">content</div> </div> #container { height: 300px; display: table;/*让元素以表格形式渲染*/ } #content { display:table-cell;/*让元素以表格的单元素格形式渲染*/ vertical-align: middle;/*使用元素的垂直对齐*/ }
方法⑥:负边距+绝对定位 此方法为杀手锏 (将父元素相对定位
relative,子元素绝对定位且
top:50%,left:50%此时子元素的左上角点位于父元素的中心位置,所以再加上负边距类似的把子元素”拉回来”,margin-left:负子元素宽度/2,margin-top:负子元素高度/2)
<div class="parent"> <div class="children"></div> </div> .parent { position:relative; margin:0 auto; width:200px; height:200px; background-color:red; } .children { position:absolute; left:50%; top:50%; margin:-25px 0 0 -25px ; height:50px; width:50px; background-color: black; }
方法⑦:transform居中 (这个是针对不定宽的元素要居中使用的方法) 它配合方法⑥中的绝对定位具体体现,比如上次我遇到的水平垂直居中一个checkbox,宽度不定就使用此方法
.parent{position:relative} .child{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}
方法⑧:css3_flex (此方法自己也不太熟悉,所以转了个网友的方法)
<div class="parent"> <div class="children">我是通过flex的水平垂直居中噢!</div> </div> html,body{ width: 100%; height: 200px; } .parent { display:flex; align-items: center;/*垂直居中*/ justify-content: center;/*水平居中*/ width:100%; height:100%; background-color:red; } .children { background-color:blue; }
常见的面试水平垂直居中问题:
1.水平垂直居中一个浮动元素 (方法⑥->负边距+绝对定位)
2.水平垂直居中一个
<img>元素 (方法⑥->负边距+绝对定位)
3.水平垂直居中一个行内元素 (方法②+方法③->父元素中text-align:center;line-height:固定高度)
欢迎大家指出错误 共同学习 Caristop3
相关文章推荐
- 有用的css代码段
- js获取样式、currentStyle和getComputedStyle的兼容写法
- NEC css规范
- css的text-indent属性实现段落第一行缩进
- CSS水平居中和垂直居中解决方案(转)
- CSS中边框使用负边距值的奇技淫巧
- 自定义按钮样式
- css设置各种中文字体如雅黑、黑体、宋体、楷体等等
- 浏览器滚动条改变
- ie7、ie8等ie旧版本支持css3圆角
- 浏览器CSS Hack
- 利用css样式画各种图形
- pre标签的css代码,防止代码pre中代码过长等问题
- 兼容浏览器的css inline-block写法
- 第十二天 css统筹
- 第三天 css核心属性
- 第二天 css基础 ,部分选择符
- css selection改变文字反选的背景颜色
- 笔试之css优先级问题
- 纯CSS气泡框实现方法探究