在 CSS 中,可以使用多種屬性來水平對齊元素。
對齊塊元素
塊元素指的是占據(jù)全部可用寬度的元素,并且在其前后都會換行。
塊元素的例子:
<h1>
<p>
<div>
使用 margin 屬性來水平對齊
可通過將左和右外邊距設(shè)置為 "auto",來對齊塊元素。
把左和右外邊距設(shè)置為 auto,規(guī)定的是均等地分配可用的外邊距。結(jié)果就是居中的元素:
實例
.center
{
margin-left:auto;
margin-right:auto;
width:70%;
background-color:#b0e0e6;
}
使用 position 屬性進行左和右對齊
對齊元素的方法之一是使用絕對定位:
實例
復(fù)制代碼代碼如下:
.right
{
position:absolute;
right:0px;
width:300px;
background-color:#b0e0e6;
}
注釋:絕對定位元素會被從正常流中刪除,并且能夠交疊元素。
跨瀏覽器兼容性問題
當像這樣對齊元素時,對 <body> 元素的外邊距和內(nèi)邊距進行預(yù)定義是一個好主意。這樣可以避免在不同的瀏覽器中出現(xiàn)可見的差異。
當使用 position 屬性時,IE8 以及更早的版本存在一個問題。如果容器元素(在我們的案例中是 <div class="container">)設(shè)置了指定的寬度,并且省略了 !DOCTYPE 聲明,那么 IE8 以及更早的版本會在右側(cè)增加 17px 的外邊距。這似乎是為滾動條預(yù)留的空間。當使用 position 屬性時,請始終設(shè)置 !DOCTYPE 聲明:
實例
body
{
margin:0;
padding:0;
}
.container
{
position:relative;
width:100%;
}
.right
{
position:absolute;
right:0px;
width:300px;
background-color:#b0e0e6;
}
使用 float 屬性來進行左和右對齊
對齊元素的另一種方法是使用 float 屬性:
實例
.right
{
float:right;
width:300px;
background-color:#b0e0e6;
}
跨瀏覽器兼容性問題
當像這樣對齊元素時,對 <body> 元素的外邊距和內(nèi)邊距進行預(yù)定義是一個好主意。這樣可以避免在不同的瀏覽器中出現(xiàn)可見的差異。
當使用 float 屬性時,IE8 以及更早的版本存在一個問題。如果省略 !DOCTYPE 聲明,那么 IE8 以及更早的版本會在右側(cè)增加 17px 的外邊距。這似乎是為滾動條預(yù)留的空間。當使用 float 屬性時,請始終設(shè)置 !DOCTYPE 聲明:
實例
body
{
margin:0;
padding:0;
}
.right
{
float:right;
width:300px;
background-color:#b0e0e6;
}
新聞熱點
疑難解答