定位的祖父元素
沒有定位的父元素
水平展開的靜態元素垂直展開的絕對元素水平展開的絕對元素
代碼
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>無標題頁</title>
<style type="text/css">
div
{
border: solid 1px;
}
.gp
{
position: relative;
width: 500px;
height: 200px;
margin-left:150px;
margin-top:150px;
}
.parent
{
width: 300px;
height: 150px;
margin-left: 20px;
}
#hss
{
margin-left: 30px;
margin-right: 30px;
width: auto;
}
#vsa
{
position:absolute;
width:120px;
left:auto;
margin-left:auto;
right:0;
margin-right:70px;
height:auto;
top:0;
margin-top:-30px;
bottom:0;
margin-bottom:-30px;
z-index:1000;
}
#hsa
{
position:absolute;
margin-left:-30px;
margin-right:-30px;
margin-top:30px;
margin-bottom:-30px;
width:auto;
left:0;
right:0;
}
</style>
</head>
<body>
<div class="gp">
定位的祖父元素
<div class="parent">
沒有定位的父元素
<div id="hss">
水平展開的靜態元素</div>
<div id="vsa">
垂直展開的絕對元素</div>
<div id="hsa">
水平展開的絕對元素</div>
</div>
</div>
</body>
</html>
一、縮排
static 縮排 水平展開靜態元素
父元素width為300px
{
width:auto;
margin-left:50px;
margin-right:50px;
width:auto;
}
這樣的話子項目左右各縮排了50px 子項目寬度為100px
總結:對於靜態元素設定了width:auto,除去左右空隙就是其剩下的寬度
absolute 縮排 垂直展開的絕對元素
絕對位置的margin值必須要知道它的top,bottom,left,right,因為只有這樣才能知道它外框,不然他是包圍元素的內容
總結:對於絕對位置的,如果想要其垂直展開,必須指定其top,bottom 將其展開,同理可得left,rigth將其左右展開
二、靜態元素位移
靜態元素位移一般採用margin-left margin-right margin-top margin-bottom 進行位移
但是這裡對於位移出父元素,maggin-left:-30px 這種IE6,7都採取截斷的方式,只有IE8顯示超出部分
三、浮動元素的位移
對於float 來說它與絕對位置(absolute)和固定定位(fixed)不同的是前者同為folat的元素相互影響,而後者兩者之間不相互影響。
四、絕對元素和固定元素的位移
絕對位置和固定定位(相對於螢幕的位置,不應捲軸滾動而滾動 ,IE6下不支援position:fixed)
在絕對位置和固定定位中根據位置進行margin後左右上下位移
五、靜態內嵌元素的對齊 靠左對齊的內容
置中(行高48px)
居右
要由使用者代理程式(而不是 CSS)來確定左右對齊文本如何展開,以填滿父元素左右邊界之間的空間。例如,有些瀏覽器可能只在單詞之間增加額外的空間,而另外一些瀏覽器可能會平均分布字母間的額外空間(不過 CSS 規範特別指出,如果 letter-spacing 屬性指定為一個長度值,“使用者代理程式不能進一步增加或減少字元間的空間”)。還有一些使用者代理程式可能會減少某些行的空間,使文本擠得更緊密。所有這些做法都會影響元素的外觀,甚至改變其高度,這取決於使用者代理程式的對齊選擇影響了多少文本行。
基準低於基準高於基準
line-height:是設定行高的
vertical-align: baseline(基準線) +V(基準線向上移V) -V(基準線向下移V)
text-align:left(靠左),right(靠右),center(置中),justify(實現左右對齊文字效果,慎用,問題多)
六、靜態塊狀元素的對齊與位移
1、margin-left:auto;margin-right:auto 這樣可以使塊狀元素置中
2、不指定塊狀元素的寬度時,margin-left:Value 這樣使其縮排Value距離
七、靜態表格的對齊與位移
1、塊狀元素不能被包裹、除非他設定為定位或浮動
2、內嵌元素不能設定尺寸,除非他們被設定成定位或浮動
3、Table既可以包裹又可以設定尺寸,多才多藝啊
總結:浮動或定位以後其就具有設定寬度和包裹內容的特性,而table本身就具有這個特性
八、絕對元素的對齊與位移
左上方對齊&位移
左下角對齊&位移
中心對齊
右上方對齊&位移
右下角對齊&位移
中心對稱的相容性有點問題