首頁 > web前端 > html教學 > 如何用css实现元素水平与垂直居中_html/css_WEB-ITnose

如何用css实现元素水平与垂直居中_html/css_WEB-ITnose

WBOY
發布: 2016-06-21 08:59:09
原創
1105 人瀏覽過

如果文章对你有帮助,请点喜欢并关注,这将是我最大的动力,谢谢

1.水平居中

1.1.文字,图片以及内联元素:

如果希望居中的是内联元素或者是文字图片text-align:center;

1.2.块状元素

1.2.1.对于已设置宽度的块状元素:

margin:0 auto;----------------------让margin的左右自适应,通常是居中

1.2.2.对于未设置宽度的块状元素:

1.使用table标签html:

<table>        <tr>            <td>                <div id="container"></div>            </td>        </tr>    </table>
登入後複製

css:

table{     margin:0 auto;}
登入後複製

这个不常用,因为添加了更多无意义的标签2.通过将子块状元素变成行内元素html:

<div>    <p>居中示例</p></div>
登入後複製
登入後複製

css:

p{     display:inline;}div{     text-align:center;}
登入後複製

假设p在div内部,要让p居中先给外层元素设置text-align:center,这个意思是让div里面的内联元素居中,然后将p变成内联元素,即可。3.通过positionhtml:

<div>    <p>居中示例</p></div>
登入後複製
登入後複製

css:

div{     float:left;       position:relative;      left:50%;}p{     position:relative;       right:50%;}
登入後複製

float:left,目的是让父元素靠左并且宽度与子元素等宽;然后相对于原先的位置,向右移动50%,此时该元素的left为50%+(50%父元素自身宽度)然后将子元素相对于原先的位置,向左移动50%(这50%是基于父元素的宽度),此时居中。

2.垂直居中

2.1.对于已设置高度的单行文本

只需将父元素的height值与line-height的值设置相同即可

2.2.对于已设置高度的多行文本

1.使用table标签html:

    <table>        <tr>            <td>                <p>aaaaa</p>                <p>aaaaa</p>                   <p>aaaaa</p>            </td>        </tr>    </table>
登入後複製

css:

table{            height: 500px;            background-color: #aaa;        }
登入後複製

因为table标签中的td拥有标签隐式的样式:vertical-align:middle;2.通过table-cellhtml:

   <p>aaaaa</p>   <p>aaaaa</p>      <p>aaaaa</p>
登入後複製

css:

p{     display:table-cell;     vertical-align:middle;}
登入後複製

table-cell的意思是让元素以表格单元的形似表现,但是只支持IE8以上浏览器​

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板