|
一、记录下几种盒子居中的方法: nbsp; 1.0、margin固定宽高居中; nbsp; 2.0、负margin居中; nbsp; 3.0、绝对定位居中; nbsp; 4.0、table-cell居中; nbsp; 5.0、flex居中; nbsp; 6.0、transform居中; nbsp; 7.0、不确定宽高居中(绝对定位百分数); nbsp; 8.0、button居中。 nbsp; 二、代码演示(html使用同一个Demo): nbsp; html Demo: nbsp; lt;bodygt; nbsp;nbsp;nbsp; lt;div id=quot;containerquot;gt; nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp; lt;div id=quot;boxquot;gt;lt;/divgt; nbsp;nbsp;nbsp; lt;/divgt; lt;/bodygt; nbsp; nbsp; 1.0、margin固定宽高居中(演示) nbsp; 这种定位方法纯粹是靠宽高和margin拼出来的,不是很灵活。 nbsp; CSS: nbsp; #container { nbsp;nbsp;nbsp; width: 600px; nbsp;nbsp;nbsp; height: 500px; nbsp;nbsp;nbsp; border: 1px solid #000; nbsp;nbsp;nbsp; margin: auto; } #box { nbsp;nbsp;nbsp; width: 200px; nbsp;nbsp;nbsp; height: 200px; nbsp;nbsp;nbsp; margin: 150px 200px; nbsp;nbsp;nbsp; background-color: #0ff; }nbsp; nbsp; 2.0、负margin居中(演示) nbsp; 利用负的margin来进行居中,需要知道固定宽高,限制比较大。 nbsp; CSS:
#container { nbsp;nbsp;nbsp; position: relative; nbsp;nbsp;nbsp; width: 600px; nbsp;nbsp;nbsp; height: 500px; nbsp;nbsp;nbsp; border: 1px solid #000; nbsp;nbsp;nbsp; margin: auto; } #box { nbsp;nbsp;nbsp; position: absolute; nbsp;nbsp;nbsp; width: 200px; nbsp;nbsp;nbsp; height: 200px; nbsp;nbsp;nbsp; left: 50%; nbsp;nbsp;nbsp; top: 50%; nbsp;nbsp;nbsp; margin: -100px -100px; nbsp;nbsp;nbsp; background-color: #0ff; } nbsp; 3.0、绝对定位居中(演示) nbsp; 利用绝对定位居中,非常常用的一种方法。 nbsp; CSS:
#container { nbsp;nbsp;nbsp; position: relative; nbsp;nbsp;nbsp; width: 600px; nbsp;nbsp;nbsp; height: 500px; nbsp;nbsp;nbsp; border: 1px solid #000; nbsp;nbsp;nbsp; margin: auto; } #box { nbsp;nbsp;nbsp; position: absolute; nbsp;nbsp;nbsp; width: 200px; nbsp;nbsp;nbsp; height: 200px; nbsp;nbsp;nbsp; left: 0; nbsp;nbsp;nbsp; top: 0; nbsp;nbsp;nbsp; right: 0; nbsp;nbsp;nbsp; bottom: 0; nbsp;nbsp;nbsp; margin: auto; nbsp;nbsp;nbsp; background-color: #0ff; } nbsp; 4.0、table-cell居中(演示) nbsp; 利用table-cell来控制垂直居中。 nbsp; CSS: nbsp; #container { nbsp;nbsp;nbsp; display: table-cell; nbsp;nbsp;nbsp; width: 600px; nbsp;nbsp;nbsp; height: 500px; nbsp;nbsp;nbsp; vertical-align: middle; nbsp;nbsp;nbsp; border: 1px solid #000; } #box { nbsp;nbsp;nbsp; width: 200px; nbsp;nbsp;nbsp; height: 200px; nbsp;nbsp;nbsp; margin: 0 auto; nbsp;nbsp;nbsp; background-color: #0ff; } nbsp; 5.0、flex居中(演示) nbsp; CSS3中引入的新布局方式,比较好用。缺点:IE9以及IE9一下不兼容。 nbsp; CSS: nbsp; #container { nbsp;nbsp;nbsp; display: -webkit-flex; nbsp;nbsp;nbsp; display: flex; nbsp;nbsp;nbsp; -webkit-align-items: center; nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp; align-items: center; nbsp;nbsp;nbsp; -webkit-justify-content: center; nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp; justify-content: center; nbsp;nbsp;nbsp; width: 600px; nbsp;nbsp;nbsp; height: 500px; nbsp;nbsp;nbsp; border: 1px solid #000; nbsp;nbsp;nbsp; margin: auto; } #box { nbsp;nbsp;nbsp; width: 200px; nbsp;nbsp;nbsp; height: 200px; nbsp;nbsp;nbsp; background-color: #0ff; }nbsp; nbsp; 6.0、transform居中(演示) nbsp; 这种方法灵活运用CSS中transform属性,较为新奇。缺点是IE9下不兼容。 nbsp; CSS:
#container { nbsp;nbsp;nbsp; position: relative; nbsp;nbsp;nbsp; width: 600px; nbsp;nbsp;nbsp; height: 600px; nbsp;nbsp;nbsp; border: 1px solid #000; nbsp;nbsp;nbsp; margin: auto; } #box { nbsp;nbsp;nbsp; position: relative; nbsp;nbsp;nbsp; top: 50%; nbsp;nbsp;nbsp; left: 50%; nbsp;nbsp;nbsp; width: 200px; nbsp;nbsp;nbsp; height: 200px; nbsp;nbsp;nbsp; transform: translate(-50%, -50%); nbsp;nbsp;nbsp; -webkit-transform: translate(-50%, -50%); nbsp;nbsp;nbsp; -ms-transform: translate(-50%, -50%); nbsp;nbsp;nbsp; -moz-transform: translate(-50%, -50%); nbsp;nbsp;nbsp; background-color: #0ff; } nbsp; 7.0、不确定宽高居中(绝对定位百分数)(演示) nbsp; 这种不确定宽高的居中,较为灵活。只需要保证left和right的百分数一样就可以实现水平居中,保证top和bottom的百分数一样就可以实现垂直居中。 nbsp; CSS:
#container { nbsp;nbsp;nbsp; position: relative; nbsp;nbsp;nbsp; width: 600px; nbsp;nbsp;nbsp; height: 500px; nbsp;nbsp;nbsp; border: 1px solid #000; nbsp;nbsp;nbsp; margin: auto; } #box { nbsp;nbsp;nbsp; position: absolute; nbsp;nbsp;nbsp; left: 30%; nbsp;nbsp;nbsp; right: 30%; nbsp;nbsp;nbsp; top: 25%; nbsp;nbsp;nbsp; bottom: 25%; nbsp;nbsp;nbsp; background-color: #0ff; } nbsp; 8.0、button居中(演示) nbsp; 利用button做外容器,里边的块元素会自动垂直居中,只需要控制一下水平居中就可以达到效果。 nbsp; HTML: nbsp; lt;buttongt; nbsp;nbsp;nbsp; lt;divgt;lt;/divgt; lt;/buttongt;
CSS:
(编辑:云计算网_韶关站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|