網(wǎng)站制作應(yīng)該使用的7個(gè)CSS布局
如果你想做像素完美的跨瀏覽器CSS布局,那么你可能遇到IE的問(wèn)題。我要強(qiáng)調(diào)的7大CSS黑客,網(wǎng)站制作經(jīng)常使用的像素完美的設(shè)計(jì)。
1)盒模型的黑客。
盒模型的黑客也曾經(jīng)是固定的rendering問(wèn)題在預(yù)browsers IE 6,在邊境上和padding是都包括在一個(gè)width元,20世紀(jì)opposed添加到C
padding: 4em; border: 1em solid red; width: 30em; width/**/:/**/ 25em;
2)條件的意見(jiàn)
這些意見(jiàn)是IE only for conditional NOT SUPPORTED模式和他們的任何其他瀏覽器。for other browsers他們只是普通的意見(jiàn)和therefor是安,他們是安全的使用。
典型的是:the usage is as
<!--[if IE]> Some CssCode<![endif]-->
上述代碼適用于Internet Explorer的所有版本,即5.01、5.5和6,但現(xiàn)在網(wǎng)站制作希望將其應(yīng)用于Internet Explorer的版本,即5.01、5.5和6,因此網(wǎng)站制作將應(yīng)用以下條件:
<!--[if lte IE 6]> Some Css Code<![endif]-->
完成測(cè)試后,網(wǎng)站制作刪除所有的文件分隔符,所以主CSS是干凈整潔的。然后在條件注釋中的文件的頭部分調(diào)用這個(gè)單獨(dú)的文件。
<!--[if lte IE 6]> <link rel="stylesheet" type="text/css" href="ie_hacks.css" /><![endif]-->
條件是以下之一:
IE(IE的任何版本)
IE版本(版本比版本少)
LTE IE版本(版本小于或等于版本)
IE版本(僅版本)
GTE的IE版本(大于或等于版本更大的版本)
GT IE版本(版本大于版本)
版本的Internet Explorer,版本通常是5,5.5,6,或者7,你可以在quirksmode閱讀更多關(guān)于這個(gè)的信息。
3)元素的最小寬度和馬克斯寬度
IE不理解這個(gè)命令,所以網(wǎng)站制作需要一種在這個(gè)瀏覽器中工作的新方法。讓網(wǎng)站制作舉一個(gè)快速的例子,網(wǎng)站制作需要將它應(yīng)用到帶有id =“包裝器”的div中:
<wrapper><div id="nav">
Next we create our CSS commands, so as to create a minimum width of 750px:
#wrapper{min-width: 750px;width:expression(document.body.clientWidth < 750? "750px": "auto" );}
你也可能會(huì)想這個(gè)最小寬度和最大寬度1220px結(jié)合750px:
#wrapper{min-width: 750px;max-width: 1220px;width:expression(document.body.clientWidth < 750? "750px" : document.body.clientWidth > 1220? "1220px" : "auto");}
另一種用于沒(méi)有JavaScript的MIN高度的方法是使用Dustin Diaz的“漂亮的黑客”:
#id{ min-height: 100px; height:auto !important; height:100px; }
4)輕松選擇器
大多數(shù)CSS黑客處理選擇器錯(cuò)誤。下面是一個(gè)不同的IE版本和選擇器的開(kāi)始列表,它們可以在其中選擇元素。所有這些選擇器都使用有效的CSS。
IE 6 and below
* html {}
IE 7 and below
*:first-child+html {} * html {}
IE 7 only
*:first-child+html {}
IE 7 and modern browsers only
html>body {}
Modern browsers only (not IE 7)
html>/**/body {}
Recent Opera versions 9 and below
html:first-child {}
5)無(wú)論怎樣:盤旋
懸停選擇使你有HTML元素冷卻效果和表。大多數(shù)瀏覽器都沒(méi)有問(wèn)題,除了IE,看看樣式表和每個(gè)規(guī)則的JavaScript。
如果可以跟蹤懸停規(guī)則,而HTC可以用來(lái)改變?cè)氐男袨?,那么?yīng)該可以創(chuàng)建一個(gè)允許任何元素懸停的行為。
你可以在這里多讀一些。
6)透明的PNG圖片
即不太好處理png透明。你會(huì)得到一個(gè)丑陋的灰色背景的地方,它應(yīng)該是透明的。網(wǎng)站制作不能只是用GIF,因?yàn)闆](méi)有更高分辨率的圖像,很好。所以網(wǎng)站制作需要一個(gè)CSS破解來(lái)解決這個(gè)問(wèn)題。按照下列步驟,你將被設(shè)置:
HTC的腳本和透明GIF will be used to solve this的出路。你可以在這里下載both隊(duì)列
現(xiàn)在就上傳這些文件到你的窗簾選擇2 ie.css隊(duì)列。
添加一個(gè)簡(jiǎn)單的代碼到你的ie.css Line of CSS文件:
img.pngfix { behavior: url(pngHack.htc); }
7)stylegala -沒(méi)有更多的CSS Hacks
Stylegala的方法是檢測(cè)瀏覽器版本和服務(wù)于不同的CSS規(guī)則,不同的用戶代理,不使用黑客或條件注釋。同時(shí),最終用戶或驗(yàn)證器將永遠(yuǎn)看不到其他瀏覽器的CSS規(guī)則指定比他們使用的是。他使用了一些簡(jiǎn)單的PHP代碼來(lái)精確地檢測(cè)瀏覽器類型,就像任何CSS破解一樣。