防止CSS網(wǎng)頁布局錯位 CSS寬度計算
發(fā)布時間:2012-10-12 12:02:30 作者:佚名
我要評論
計算網(wǎng)頁像素寬度是為了CSS網(wǎng)頁布局整齊與兼容。常見的我們布局左右結構網(wǎng)頁或使用padding、margin布局的時候?qū)⒂嬎阏搶挾?,如果不計算無論是寬度過大過小就會出現(xiàn)錯位問題
為什么計算寬度
計算網(wǎng)頁像素寬度是為了CSS網(wǎng)頁布局整齊與兼容。常見的我們布局左右結構網(wǎng)頁或使用padding、margin布局的時候?qū)⒂嬎阏搶挾龋绻挥嬎銦o論是寬度過大過小就會出現(xiàn)錯位問題。
怎么計算CSS寬度
例一:我們計算一個左右結構的布局樣式。
假如總寬度為400px,那么左右加起來就應當小于400px,那我們可能左邊為300px,右邊為100px
正確代碼:
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>左右結構寬度計算www.dhdzp.com</title>
<style type="text/css">
.webjxcom{width:400px;}
.zuo{ float:left; width:300px; background:#CCC;}
.you{ float:right; width:100px; background:#999}
</style>
</head>
<body>
<div class="webjxcom">
<div class="zuo">左邊300px</div>
<div class="you">右邊100px</div>
</div>
</body>
</html>
以上為正確的左右結構總寬度剛好等于400px
錯誤:
假如我們在總寬度不變情況下,左邊為300px,而右邊為120px那總寬度超過了20px,我們看看會出現(xiàn)什么問題,DIV+CSS代碼如下:
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>左右結構寬度計算www.dhdzp.com</title>
<style type="text/css">
.webjxcom{width:400px;}
.zuo{ float:left; width:300px; background:#CCC;}
.you{ float:right; width:120px; background:#999}
</style>
</head>
<body>
<div class="webjxcom">
<div class="zuo">左邊300px</div>
<div class="you">右邊100px</div>
</div>
</body>
</html>
我們根據(jù)上圖可看出因為總寬度大約了20px,所以導致了左右結構不能平齊,就出現(xiàn)了右邊往下掉。
這樣就出現(xiàn)了錯位的兼容問題,一般在實際中因為我們計算的疏忽,一般相差小的時候是1px-2px,那樣就不會被我們發(fā)現(xiàn),所以排除錯位兼容可以從寬度計算入手。
例二:左右結構中有1px邊框?qū)嵗?
一般左右結構中有1px邊框,然后再加上有些邊框這時我們設置左右結構時候就需要將此邊框?qū)挾扰c左右結構寬度計算在一起。
正確例子:
CSS與html代碼如下:
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>左右結構寬度計算www.dhdzp.com</title>
<style type="text/css">
.webjxcom{width:400px;}
.zuo{ float:left; width:298px; border:1px solid #F00; background:#CCC;}
.you{ float:right; width:98px; background:#999; border:1px solid #F00;}
</style>
</head>
<body>
<div class="webjxcom">
<div class="zuo">左邊300px</div>
<div class="you">右邊100px</div>
</div>
</body>
</html>
因左右結構都有1px的寬度這個時候各需要減去左右2像素的邊框?qū)挾龋宰筮呑詈笫?98px,右邊為98px的寬度
如果不減去邊框?qū)斐梢幌滦Ч?
DIV+CSS設置百分比寬度計算
有時候我們也需要使用百分比來計算寬度,通常情況也是總的百分比寬度,不能超過100%
CSS寬度計算時候注意總結:
無論是左右結構、多列的布局還是單獨一個DIV寬度的布局設置都需要注意寬度的把握與計算,特別是使用了padding、margin、邊框等CSS屬性,這個時候我們都需要將它們設置的占用寬度計算入內(nèi),牢牢把握同排各寬度之和小于或等于總寬度,如果大于總寬度將會出現(xiàn)錯位的兼容問題。所以一般錯位時我們就可以從計算寬度入手,當然錯位還有很多原因這里也是解決錯位兼容問題的方法之一。
計算網(wǎng)頁像素寬度是為了CSS網(wǎng)頁布局整齊與兼容。常見的我們布局左右結構網(wǎng)頁或使用padding、margin布局的時候?qū)⒂嬎阏搶挾龋绻挥嬎銦o論是寬度過大過小就會出現(xiàn)錯位問題。
怎么計算CSS寬度
例一:我們計算一個左右結構的布局樣式。
假如總寬度為400px,那么左右加起來就應當小于400px,那我們可能左邊為300px,右邊為100px
正確代碼:
復制代碼
代碼如下:<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>左右結構寬度計算www.dhdzp.com</title>
<style type="text/css">
.webjxcom{width:400px;}
.zuo{ float:left; width:300px; background:#CCC;}
.you{ float:right; width:100px; background:#999}
</style>
</head>
<body>
<div class="webjxcom">
<div class="zuo">左邊300px</div>
<div class="you">右邊100px</div>
</div>
</body>
</html>
以上為正確的左右結構總寬度剛好等于400px
錯誤:
假如我們在總寬度不變情況下,左邊為300px,而右邊為120px那總寬度超過了20px,我們看看會出現(xiàn)什么問題,DIV+CSS代碼如下:
復制代碼
代碼如下:<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>左右結構寬度計算www.dhdzp.com</title>
<style type="text/css">
.webjxcom{width:400px;}
.zuo{ float:left; width:300px; background:#CCC;}
.you{ float:right; width:120px; background:#999}
</style>
</head>
<body>
<div class="webjxcom">
<div class="zuo">左邊300px</div>
<div class="you">右邊100px</div>
</div>
</body>
</html>
我們根據(jù)上圖可看出因為總寬度大約了20px,所以導致了左右結構不能平齊,就出現(xiàn)了右邊往下掉。
這樣就出現(xiàn)了錯位的兼容問題,一般在實際中因為我們計算的疏忽,一般相差小的時候是1px-2px,那樣就不會被我們發(fā)現(xiàn),所以排除錯位兼容可以從寬度計算入手。
例二:左右結構中有1px邊框?qū)嵗?
一般左右結構中有1px邊框,然后再加上有些邊框這時我們設置左右結構時候就需要將此邊框?qū)挾扰c左右結構寬度計算在一起。
正確例子:
CSS與html代碼如下:
復制代碼
代碼如下:<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>左右結構寬度計算www.dhdzp.com</title>
<style type="text/css">
.webjxcom{width:400px;}
.zuo{ float:left; width:298px; border:1px solid #F00; background:#CCC;}
.you{ float:right; width:98px; background:#999; border:1px solid #F00;}
</style>
</head>
<body>
<div class="webjxcom">
<div class="zuo">左邊300px</div>
<div class="you">右邊100px</div>
</div>
</body>
</html>
因左右結構都有1px的寬度這個時候各需要減去左右2像素的邊框?qū)挾龋宰筮呑詈笫?98px,右邊為98px的寬度
如果不減去邊框?qū)斐梢幌滦Ч?
DIV+CSS設置百分比寬度計算
有時候我們也需要使用百分比來計算寬度,通常情況也是總的百分比寬度,不能超過100%
CSS寬度計算時候注意總結:
無論是左右結構、多列的布局還是單獨一個DIV寬度的布局設置都需要注意寬度的把握與計算,特別是使用了padding、margin、邊框等CSS屬性,這個時候我們都需要將它們設置的占用寬度計算入內(nèi),牢牢把握同排各寬度之和小于或等于總寬度,如果大于總寬度將會出現(xiàn)錯位的兼容問題。所以一般錯位時我們就可以從計算寬度入手,當然錯位還有很多原因這里也是解決錯位兼容問題的方法之一。
相關文章
本文主要介紹了css九宮格布局的五種方法,內(nèi)容包括grid布局、flex布局、table布局、float浮動定位、inline-block+letter-spacing屬性這五種方法的實現(xiàn),感興趣的可以了解下2023-09-18- 在Web開發(fā)中,經(jīng)常會遇到需要將元素水平和垂直居中的情況,今天,將為大家分享幾種CSS方法,讓你的元素輕松居中,讓頁面更美觀吸引人,感興趣的小伙伴可以自己動手試一試2023-09-08
- 相信大家在面試的時候也會經(jīng)常碰到css實現(xiàn)元素居中的方法,下面我介紹6種方法給大家,歡迎大家評論區(qū)交流2023-09-07

flex布局中使用flex-wrap實現(xiàn)換行的項目實踐
最近需要做個換行的布局,本文主要介紹了flex布局中使用flex-wrap實現(xiàn)換行的項目實踐,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需2022-06-16CSS布局之浮動(float)和定位(position)屬性的區(qū)別
今天看到有朋友留言問浮動和定位有什么區(qū)別,如何使用?今天找了篇文章,講的比較通俗易懂,供大家參考2021-09-23
這篇文章主要介紹了css實現(xiàn)元素居中的N種方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-02-02
這篇文章主要介紹了div水平布局兩邊對齊的三種實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起2021-01-21
waterfall瀑布流布局+動態(tài)渲染的實現(xiàn)
這篇文章主要介紹了waterfall瀑布流布局+動態(tài)渲染的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起2021-01-19
這篇文章主要介紹了頁面中有間隔的方格布局如何完美實現(xiàn)方法。文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來2020-11-27- 這篇文章主要介紹了css實現(xiàn)六種自適應兩欄布局方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習2020-10-28

