6.13日(rì)音(yīn)訊,cssha↓§$ck和(hé)兼容的(de)解決方案。在網頁制(zhì)>γ作(zuò)中,兼容問(wèn)題是(shì)一(¶$<yī)個(gè)基礎問(wèn)題,又(yòu)是(shì)÷←≠←一(yī)個(gè)讓人(rén)頭疼的(de)問(wèn)題,因為(wèi•€ΩΩ)總有(yǒu)一(yī)些(xiē)小(xiǎo)₹∞的(de)不(bù)兼容的(de)出現(xiàn)φ®★±,當然了(le),這(zhè)也(yě) σ✔♠是(shì)考驗我們基礎知(zhī)識的(de)學習(xí)和&™∏₩(hé)實踐能(néng)力的(de)一(yī)個(gè)标準,如(rú₽↔)果用(yòng)hack卻可(kě)以解決這(zhè)些(xiē)問(<γ¶wèn)題,但(dàn)
邯鄲網站(zhàn)建設小(xiǎo)編還(hái)是(shì)勸大(dà)家(j♥↔iā),能(néng)不(bù)用(yòng)↓$ ™hack就(jiù)不(bù)要(yào)用λ£↓(yòng),必須要(yào)用(yòng)的(de)也(yě)要(÷€βyào)少(shǎo)量使用(yòng),切忌大(€€§←dà)範圍去(qù)使用(yòng)。
針對(duì)浏覽器(qì)的(deγ)選擇器(qì)
這(zhè)些(xiē)選擇器(qì)在你(nǐ)需要(yào)✘₹β針對(duì)某款浏覽器(qì)進行(xíng)css₹γ₩設計(jì)時(shí)将非常有(yǒu)用(yòng).
IE6及其更低(dī)版本
*html{}
IE7及其更低(dī)版本
*:first-child+htmα♦∑l{}*html{}
僅針對(duì)IE7
*:first-child+html{}
IE7和(hé)當代浏覽器(qì)
html>body{}
僅當代浏覽器(qì)(IE7不(bù)适用(yò♦™♣ng))
html>/**/body{}
Opera9及其更低(dī)版本
html:first-child{}
Safari
html[xmlns*=""]body:las★γ♣★t-child{}
要(yào)使用(yòng)這(zhè)些(xiē)選擇器♠≤$(qì),請(qǐng)将它們放(fàng)在樣式之前.例如(rú):
#content-box{
width:300px;
height:150px;
}
*html
#content-box{
width:250px;
}/*overridestheabovestylea♣€ndchangesthewidthto250pxinφ $✘IE6andbelow*/
三.讓IE6支持PNG透明(míng)
一(yī)個(gè)IE6的(de)Bug引起了(le)大(☆€dà)麻煩,他(tā)不(bù)支持透明(míng)的(de)<↓∑PNG圖片.
你(nǐ)需要(yào)使用(yòng)一(yī'σ₽)個(gè)css濾鏡
*html#image-style{
background-image:none;∞<
filter:progid:DXImageTranε∑₩sform.Microsoft.AlphaIma↓€geLoader(src="fil
ename.png",sizingMeth→∏od="scale");
}
四.移除超鏈接的(de)虛線(僅對(dβ•uì)FF有(yǒu)效)
FireFox下(xià),當你(nǐ)σ★點擊一(yī)個(gè)超鏈接時(shí)會(huì)在>→外(wài)圍出現(xiàn)一(yī)個(gè)虛↔λ$∑線輪廓.這(zhè)很(hěn)容易解決,隻需要(yào)在标簽樣式中加入ouλ∑↓tline:none.
a{
outline:none;
}
五.給行(xíng)內(nèi)元素定義寬度
如(rú)果你(nǐ)給一(yī)個(gè₹™α±)行(xíng)內(nèi)元素定義寬度,那(nà)麽≥± δ它隻是(shì)在IE6下(xià)有(yǒ↔≠u)效.所有(yǒu)的(de)HTML元素要(y§∏ào)麽是(shì)行(xíng)內(nèi)元素要(yào)麽就(jiù)好€§¶♦(hǎo)是(shì)塊元素.行(xíng)內(nèi)元素包括:<s→↔σpan>,<a>,<strong>和σ↔↑(hé)<em>.塊元素包括<div>,<☆✔$★;p>,<h1>,<for₹ ÷÷m>和(hé)<li>.你(nǐ)不(bù)能(néng)♥定義行(xíng)內(nèi)元素的(de)寬度,為(wèi)了(le≈××)解決這(zhè)個(gè)問(wèn)題你(nα≤ε§ǐ)可(kě)以将行(xíng)內(nèi)元素轉變為(wèi)塊元素.
span{width:150px;display:bloc $↔k}
六.讓固定寬度的(de)頁面居中
為(wèi)了(le)讓頁面在浏覽器(qì)居中顯示,需要(yào)相(xiàng)對(×ε♣duì)定位外(wài)層div,然後把margin設置為(↕×↕wèi)auto.
#wrapper{
margin:auto;
position:relative;
}
七.圖片替換技(jì)術(shù)
用(yòng)文(wén)字總比用(yòng)圖片做(z £≥δuò)标題好(hǎo)一(yī)些(xiē).文(wénΩ<)字對(duì)屏幕閱讀(dú)機(jī)和(✘÷↑©hé)SEO都(dōu)是(shì)非常友(yǒu)好(h×☆♦ǎo)的(de).
HTML:
<h1><span&g©↕t;www.hdscwl.com</sp→an></h1>
CSS:
h1{background:url(heading-image.g₹♣if)no-repeat;}
h1span{
position:absolute;
text-indent:-5000px☆☆;
}
你(nǐ)可(kě)以看(kàn)到(dào)我們對(duì)标題"÷₽≥使用(yòng)了(le)标準的(de)<h1>作(zuò)為 ®(wèi)标簽并且用(yòng)css來(lái)将文(wén)本替換為(wè$×i)圖片.text-indent屬性将文( wén)字推到(dào)了(le)浏覽器(qì)左邊5000px處,€>這(zhè)樣對(duì)于浏覽者來(lái)說(s§∏huō)就(jiù)看(kàn)不(bù)見(jiàn)了(leππ).
關掉css,然後看(kàn)看(kà₩α®n)頭部會(huì)是(shì)什(shén)麽樣子(zǐ)的γ™(de).
八.最小(xiǎo)寬度
IE6另外(wài)一(yī)個(★←gè)bug就(jiù)是(shì)它不(bù)♥↕• 支持min-width屬性.min-width又(y↔π$σòu)是(shì)相(xiàng)當有(yǒu)用(yòng)的(de),特≈₹∏✘别是(shì)對(duì)于彈性模闆來(lái)說¶£™→(shuō),它們有(yǒu)一(yī)>•個(gè)100%的(de)寬度,min-width可(Ω kě)以告訴浏覽器(qì)何時(shí)就(jiù)不(bù)要(yào)再壓♠☆縮寬度了(le).
除IE6以外(wài)所有(yǒu)的(de)浏覽器(qì)你(n∞"≥>ǐ)隻需要(yào)一(yī)個(gè)min-w₹σidth:Xpx;例如(rú):
.container{
min-width:300px;
}
為(wèi)了(le)讓他(tā)在IE6下(xià)↕™Ω工(gōng)作(zuò),我們需要(yào)一(yī)些(xiē)↓¶•額外(wài)的(de)工(gōng)作(zu£♣'ò).開(kāi)始的(de)時(shí)候我們需要(yào)創建兩個(λ∏∞gè)div,一(yī)個(gè)包含另一(yī)個(gè):
<divclass="container"&gΩ↑€φt;
<divclass="holder"↑≤;>Content</div&g¥→ t;
</div>
然後你(nǐ)需要(yào)定義外(wài)層divγ₹的(de)min-width屬性
.container{
min-width:300px;
}
這(zhè)時(shí)該是(shì)I →©Ehack大(dà)顯身(shēn)手的(de)時(shí)候了(l≈★φ≈e).你(nǐ)需要(yào)包含如(rú)下(xià)的(<♦♥≥de)代碼:
*html.container{
border-right:300pxsolid#FFF÷∞₩;
}
*html.holder{
display:inline-block;
position:relative;
margin-right:-300px;
}
Asthebrowserwindowisresiz≈§™edtheouterdivwidthreducestosuituntilits₽±hrinkstotheborderwidth,β÷↕∑atwhichpointitwillnotshri δφnkanyfurther.Theholderdiv•γγ♦followssuitandalsostopsshrinking.The↕↑™ outerdivborderwidthbecomesthemi"Ω₽✘nimumwidthoftheinnerdiv.
九.隐藏水(shuǐ)平滾動條
為(wèi)了(le)避免出現(xiàn)水(shuǐδ€)平滾動條,在body裡(lǐ)加入overflow-x:hidden'α§¶.
body{overflow-x:hidden;}≈↔÷
當你(nǐ)決定使用(yòng)一(yī)個(gè)₩§™©比浏覽器(qì)窗(chuāng)口大(dà)的(de)圖片或者fl>←¶∏ash時(shí),這(zhè)個(gè)技(jì)巧将非常有(φ∞£γyǒu)用(yòng)。至于在現(xiàn)實的(d φe)運用(yòng)中,我們也(yě)見(jiàn)到(dào)了(le)沒有★™(yǒu)hack的(de)網頁,而且是(shì)各個(gè)浏覽器(♦εβqì)都(dōu)兼容,我們不(bù)僅要←£(yào)問(wèn)了(le),是(shì)怎麽回事(shì)呢α★±(ne),其實說(shuō)的(de)簡單些(xiē),那¶∏≈(nà)是(shì)因為(wèi)經驗豐富$'♦了(le),其實說(shuō)的(de)小(xiǎo)一(yī)點,每→ 個(gè)浏覽器(qì)都(dōu)有(yǒu)不(bù)同的(₩ ♦de)默認标準,我們隻要(yào)把這(zhè)✔©£些(xiē)掌握了(le),也(yě)就 "(jiù)把兼容問(wèn)題解決了(le),這(zhè)當然需✘∑∑要(yào)不(bù)斷的(de)實踐和(hé)多(duō)年(nián₽>¥)的(de)工(gōng)作(zuò)經驗才能(λ♠✘∏néng)得(de)出來(lái)。