應避免absolute布局濫用

2021-07-11 19:02:37 字數 742 閱讀 1614

absolute定位會導致當前塊對父級高度和寬度的「塌陷」,因為父級元素不知道absolute子元素的寬高),所以這個元素無法支撐起父元素。

而且absolute定位存在相容性的重災區:

1.absolute定位在ie,7有相容性問題,需要觸發haslayout

2.觸發完haslayout的快遞在ie7下有布局bug

3.absolute定位在ie6/7/8下的z-index有相容性問題。absolute定位需要relative定位做輔助,而造成relative的濫用,也將會使得z-index的bug難以控制。

4.absolute定位在ie6/7下對偏移量解析有相容性bug

5.absolute定位在ie6/7下的影響marginzhe摺疊bug,以及另外乙個影響margin的bug

6.absolute定位在ie6下,不指定left/top,出現布局bug

7.absolute定位在ie6下的奇偶bug:如果定位外框高度、寬度為奇數,則ie6下,絕對定位的底定位、右定位會有1畫素的誤差

當前跨手機和桌面端的頁面,主流的布局方案是彈性布局(流體布局)+media query查詢。即:

*彈性自適應布局(寬高設定相對父級的百分比+min-width/max-width)

*水平方向上的徽派使用float/display-inline-block

*設定視口user-scalable=no

*針對移動端採用media query 做更細的調節

c 開發應避免的幾個小濫用

一 string和stringbuilder 少量的字串操作不宜採用stringbuilder。由於string是不可變得物件,對於string的疊加,每次操作都會生成乙個新的string物件。所以針對大量string的操作時,我們會採用stringbuilde。但似乎很多人都知道這一點,所以只要字...

經驗之談 CSS網頁布局避免濫用DIV元素

頁面中程式設計客棧div與sp程式設計客棧an元素的使用是乙個新問題,我們也容易過多的使用它們。必要及合理的使用div可以明顯的增強文件的結構性。這也是jb51.net一直提倡的。如果你審視你的html文件,發www.cppcns.com現有著很多的div與span,那你就得換乙個眼光來看問題了,是...

重構時應避免過度思考

重構是一門在不改變軟體外部行為情況下,改善既有 內部結構的一門技術。從表面來看,重構需要引入大量的思考行為,然而,過度地思考同樣會產生不利的影響。u0026 xd n kent beck提到,重構中面臨最大的挑戰就是如何做到循序漸進,循序漸進指的是如何將工作分解為可控的步驟,並且每個步驟都易於管理。...