新聞中心
你是否遇到過CSS bug問題,本文向大家介紹一下最常用的12種CSS BUG解決方法與技巧,CSS bug是布局中最頭疼的問題。我們需要兼顧各種瀏覽器,以期待獲得一致的效果。

最常用的12種CSS BUG解決方法與技巧
CSS bug是布局中最頭疼的問題。我們需要兼顧各種瀏覽器,以期待獲得一致的效果。非常遺憾的是各廠商之間的競爭導(dǎo)致很多問題的存在。而IE6與IE7在很多問題上也存在著很大的差別。在大量的技術(shù)文檔中,也包含了這方面的內(nèi)容。輕松的解決CSS bug是我們必須掌握的技能?,F(xiàn)在整理出最常用的12種CSSBUG解決方法以及CSSBUG類的小技巧。希望對您的學(xué)習(xí)、工作有所幫助,如果您依然有疑問,歡迎您到查閱、搜索相關(guān)內(nèi)容。
一、針對瀏覽器的選擇器
這些選擇器在你需要針對某款瀏覽器進(jìn)行CSS設(shè)計時將非常有用.
IE6及其更低版本
*html{}
IE7及其更低版本
*:first-child+html{}*html{}
僅針對IE7
*:first-child+html{}
IE7和當(dāng)代瀏覽器
html>body{}
僅當(dāng)代瀏覽器(IE7不適用)
html>/**/body{}
Opera9及其更低版本
html:first-child{}
Safari
html[xmlns*=""]body:last-child{}
要使用這些選擇器,請將它們放在樣式之前.例如:
ExampleSourceCode
- #content-box{
- width:300px;
- height:150px;
- }
- ExampleSourceCode
- *html#content-box{
- width:250px;
- }
二、讓IE6支持PNG透明
一個IE6的Bug引起了大麻煩,他不支持透明的PNG圖片。
你需要使用一個CSS濾鏡
ExampleSourceCode
- *html#image-style{
- background-image:none;
- filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src="fil
- ename.png",sizingMethod="scale");
- }
三、移除超鏈接的虛線
FireFox下,當(dāng)你點擊一個超鏈接時會在外圍出現(xiàn)一個虛線輪廓.這很容易解決,只需要在標(biāo)簽樣式中加入:本文由52CSS.com整理,轉(zhuǎn)載請注明出處!
ExampleSourceCode
- outline:none.
- a{
- outline:none;
- }
#p#
四、給行內(nèi)元素定義寬度
如果你給一個行內(nèi)元素定義寬度,那么它只是在IE6下有效.所有的HTML元素要么是行內(nèi)元素要么就好是塊元素.行內(nèi)元素包括:,,和.塊元素包括
,
,
, 和
ExampleSourceCode
- span{width:150px;display:block}
-
五、讓固定寬度的頁面居中
為了讓頁面在瀏覽器居中顯示,需要相對定位外層div,然后把margin設(shè)置為auto.
ExampleSourceCode
- #wrapper{
- margin:auto;
- position:relative;
- }
-
六、IE6雙倍邊距的bug
給此對象加上display:inline即可解決問題。具體介紹:
http://www.52CSS.com/article.asp?id=144
七、BoxModel盒模型bug的一般解決辦法
這是一個臭名昭著的問題了,詳情參考這里:
http://www.52CSS.com/article.asp?id=106
八、兩個層之間的3px間隙
傳說中的“IE3pxbug”,解決的辦法:
http://www.52CSS.com/article.asp?id=146
九、在IE中的HTML注釋引起文字奇怪的復(fù)制
DuplicateCharactersBug很神奇,具體的解決辦法:
http://www.52CSS.com/article.asp?id=440
十、圖片替換技術(shù)
用文字總比用圖片做標(biāo)題好一些.文字對屏幕閱讀機和SEO都是非常友好的.
ExampleSourceCode
HTML:
Mainheadingone span> h1>
- CSS:
- h1{background:url(heading-image.gif)no-repeat;}
- h1span{
- position:absolute;
- text-indent:-5000px;
- }
-
你可以看到我們對標(biāo)題使用了標(biāo)準(zhǔn)的
作為標(biāo)簽并且用CSS來將文本替換為圖片.text-indent屬性將文字推到了瀏覽器左邊5000px處,這樣對于瀏覽者來說就看不見了,關(guān)掉CSS,然后看看頭部會是什么樣子的。#p#
十一、最小寬度
IE6另外一個bug就是它不支持min-width屬性.min-width又是相當(dāng)有用的,特別是對于彈性模板來說,它們有一個100%的寬度,min-width可以告訴瀏覽器何時就不要再壓縮寬度了.
除IE6以外所有的瀏覽器你只需要一個min-width:Xpx;例如:
ExampleSourceCode
- .container{
- min-width:300px;
- }
-
為了讓他在IE6下工作,我們需要一些額外的工作.開始的時候我們需要創(chuàng)建兩個div,一個包含另一個:
ExampleSourceCode
Content div>
- div>
-
然后你需要定義外層div的min-width屬性,本文由52CSS.com整理,轉(zhuǎn)載請注明出處!
ExampleSourceCode
- .container{
- min-width:300px;
- }
-
這時該是IEhack大顯身手的時候了.你需要包含如下的代碼:
ExampleSourceCode
- *html.container{
- border-right:300pxsolid#FFF;
- }
-
- *html.holder{
- display:inline-block;
- position:relative;
- margin-right:-300px;
- }
十二、隱藏水平滾動條
為了避免出現(xiàn)水平滾動條,在body里加入overflow-x:hidden.
ExampleSourceCode
- body{overflow-x:hidden;}
-
當(dāng)你決定使用一個比瀏覽器窗口大的圖片或者flash時,這個技巧將非常有用.
【編輯推薦】
- 四種方法輕松實現(xiàn)CSS隔行換色
- 提高CSS文件可維護(hù)、可讀性四大技巧
- CSS3八大新功能閃亮登場
- 實用但不被IE支持的十大CSS屬性
- CSS中id與class命名規(guī)則及編碼最佳習(xí)慣
責(zé)任編輯:佚名 來源: 52css.com CSS
分享文章:常用12種CSS BUG解決方法與技巧
本文鏈接:http://www.dlmjj.cn/article/ccooijd.html


咨詢
建站咨詢
