CSS垂直居中方法总结_html/css_WEB-ITnose

WBOY
Freigeben: 2016-06-24 11:48:05
Original
1035 Leute haben es durchsucht

一、把容器当作表格单元

<div class="middle-demo1">    <button>按钮</button></div>
Nach dem Login kopieren
.middle-demo1{ display: table-cell; height: 100px; //可以动态改变高度,这里只是演示 vertical-align: middle; border: 1px solid #666; }
Nach dem Login kopieren

浏览器支持情况:
http://caniuse.com/#search=table-cell

二、固定高度的元素垂直居中

<div class="middle-demo2">    <div class="g-box"></div></div>
Nach dem Login kopieren
.middle-demo2{ position: relative; width: 200px; height: 200px; border: 1px solid #666; }.g-box{ position: absolute; top: 50%; width: 100px; height: 100px; margin-top: -50px; background-color: deepskyblue; }或者.g-box{ position: absolute; top: 50%; width: 100px; height: 100px; -webkit-transform: translateY(-50px); -moz-transform: translateY(-50px); -ms-transform: translateY(-50px); -o-transform: translateY(-50px); transform: translateY(-50px); background-color: deepskyblue; }
Nach dem Login kopieren

说明:要垂直居中的元素(g-box)必须是固定高度(js动态计算设置除外)。
transform的浏览器支持情况http://caniuse.com/#search=transform

三、固定高度的元素垂直居中

<div class="middle-demo3">    <div class="g-box2"></div>    <div class="g-box3"></div></div>
Nach dem Login kopieren

g-box3是需要垂直居中的元素

.middel-demo3{ position: relative; width: 200px; height: 200px; border: 1px solid #666; }.g-box2{ height: 50%; margin-bottom: -50px; }.g-box3{ height: 100px; background-color: deepskyblue; }
Nach dem Login kopieren

说明: 要垂直居中的元素(g-box3)必须是固定高度。

四、不定高元素垂直居中

<div class="middle-demo4">    <div class="g-box4"></div></div>
Nach dem Login kopieren
.middle-demo4{ position: relative; width: 200px; height: 200px; border: 1px solid #666; }.g-box4{ position: absolute; top: 0; bottom: 0; margin-top: auto; margin-bottom: auto; width: 100px; height: 100px; background-color: deepskyblue; }
Nach dem Login kopieren

说明: 要垂直居中的元素(g-box4)可以不固定高度,浏览器支持情况IE8+,其他浏览器支持较好

五、单行文本垂直居中

<div class="middle-demo5">    <span>单行文本</span></div>
Nach dem Login kopieren
.middle-demo5{ height: 100px; line-height: 100px; border: 1px solid #666; }
Nach dem Login kopieren

说明: 对内部的块状元素无效

六、容器定高或者不定高,多行文本垂直居中

<div class="middle-demo6">    <p>单行文本</p>    <p>多行文本</p></div>
Nach dem Login kopieren
.middle-demo6{ display: table-cell; vertical-align: middle; height: 200px; //容器可以不定高,这里只是演示 border: 1px solid #666; }
Nach dem Login kopieren

七、vertical-align实现行内元素垂直居中

<div class="middle-demo7">    <span class="g-fix"></span>    <button class="g-box7">行内元素</button></div>
Nach dem Login kopieren
.middle-demo7{ position: relative; width: 200px; height: 200px; border: 1px solid #666; }.g-fix{ display: inline-block; width:0; height: 100%; vertical-align: middle; }
Nach dem Login kopieren

说明: 浏览器支持情况http://caniuse.com/#search=inline-block

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage