国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > CSS > 正文

CSS高級技巧:網頁布局

2024-07-11 08:25:11
字體:
來源:轉載
供稿:網友

上一篇CSS教程 文章:CSS高級技巧:文字環繞圖片布局
CSS至關重要的作用, CSS的設計初衷.
CSS布局和幾年前table橫行時的布局又不太一樣, 在結構化語義化的HTML文檔后面, CSS在格式化文檔的渲染效果, 把結構化文檔用表現化語言來描述. 簡而言之, 就是CSS不需要表現性標簽!
CSS布局技術依賴于三個基本概念: 定位, 浮動, margin操縱. 布局技術之間沒有本質的區別, 相同一種布局讓100個前端開發工程師來做, 可能就有100種方法.居中
在table時代, align和Valign相當的好用, 而在CSS中卻沒有簡單實現的方法,所以在標準化剛剛開始推廣的時候, 很多重構項目中居中問題變成了阻礙標準化進步的絆腳石.
1. 自動外補丁水平居中
一般情況下水平居中比較容易實現, 只需要給要居中的容器設定寬度, 以及自動水平外補丁就可以了.
比如HTML如下:

<body>
<div class="wrapper">
</div>
</body>

CSS如下:

body{}
.wrapper{width:760px;margin:0 auto;}

很簡單不是嗎? 但是有點小問題... 我們親愛的IE家族里, IE5.x和IE 6不支持自動外補丁, 但是同樣幸運的是, IE將 text-align:center 理解為所有東西居中, 而不只是文本. 哈哈, 可以利用這個Bug.
將CSS改為:

body{text-align:center;}
.wrapper{width:760px;margin:0 auto;text-align:left;}

這里就用到了一種Hack,不過不會影響其他瀏覽器的Hack就是好Hack,呵呵, 就先這么用著吧~
等等, 好像Netscape那邊也出問題了, 用Netscape 6將窗口縮小到小于容器寬度時, 容器的左邊就會跑到屏幕外邊去了, 而且還不會有滾動條...萬惡的瀏覽器大戰啊...
再來改改我們的CSS:

body{min-width:760px;text-align:center;}
.wrapper{width:760px;margin:0 auto;text-align:left;}

這樣就基本上ok了.
2. 定位法水平居中
我們也可以稍稍復雜的用定位法來完成這個工作. 所謂的定位法是用 position 屬性來定義容器位置.
同樣用上面一例的HTML代碼,
我們用定位法的CSS如下:

body{margin:0;padding:0;}
.wrapper{position:relative;left:50%;width:760px;margin-left:-380px;}

為什么用相對定位( relative )呢? 能用絕對定位(absolute )嗎?
絕對定位當然也可以, 但是絕對定位會將容器提出文檔流, 讓后面的文檔流到定位容器的位置去了, 稍不注意就會被定為的容器遮蓋住后面的內容, 而relative不會將容器提出文檔流, 后面的文檔流會給定位的容器留下它應有的空間.
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汾阳市| 澄城县| 仙桃市| 海盐县| 九寨沟县| 达日县| 肥城市| 平顺县| 沾化县| 荥经县| 汉中市| 班玛县| 济宁市| 福建省| 荆门市| 方正县| 库伦旗| 和硕县| 扬州市| 灵武市| 襄樊市| 扎囊县| 即墨市| 西吉县| 新乐市| 崇明县| 汶上县| 公主岭市| 汤阴县| 廉江市| 彩票| 门头沟区| 中宁县| 华池县| 仲巴县| 文水县| 仙桃市| 禹城市| 苏尼特左旗| 金昌市| 通渭县|