2012-08-16 24 views
0

我正在嘗試爲自己創建一個設計博客和圖庫,這就是爲什麼我要用CSS3進行實驗。我取得了我想要的其他瀏覽器的結果,現在IE讓我頭疼。使用條件CSS的IE版式調整...或其他?

我創建旋轉日期標記爲我的博客文章用CSS這樣的:

.metadata { 
margin-left: -108px; 
margin-top: 140px; 
width: 140px; 
position: absolute; 
text-align: right; 
} 

.postdate { 
display: block; 
/* Safari */ 
-webkit-transform: rotate(-90deg); 
/* Firefox */ 
-moz-transform: rotate(-90deg); 
/* Opera */ 
-o-transform: rotate(-90deg); 
font-size: 70px; 
color: #ffffff; 
} 

好吧,我是怎麼做的可能不是那麼重要。無論如何:我試着在IE中旋轉文本,並且我設法使用特定於IE的代碼來完成它,但渲染的結果非常糟糕,我不想使用它。而現在,如果沒有旋轉代碼等,日期標記自然無法靠近應該在IE中的位置。

我希望在IE中使用條件CSS爲日期標記創建完全不同的外觀,但我不確定如何,我第一次嘗試類似的東西。

<!--[if IE ]> 
<link rel="stylesheet" href="iecss.css" type="text/css" media="screen"> 
<![endif]--> 

在這IECSS-文件I包括在相同的CSS類具有稍微不同的規則:在第一我只試圖通過50個像素下降的字體大小。我的電腦上只有IE 8,並且在那裏完全沒有影響。我用IE NetRenderer預覽了我的網站,這意味着文本大小變化在IE 7中確實工作了(當然,實際上也是在IE 6中,但我不願意談論設計中發生的其他事情)。

那麼爲什麼它沒有在IE 8和(根據NetRenderer)IE 9中做什麼?我也嘗試過使用[if gte IE 8],但它也沒有做任何事情。

問題是,當IE瞭解主CSS文件中的規則並且沒有麻煩顯示結果時它應該是這樣,它不能用相同類的新CSS規則覆蓋效果嗎?

有沒有辦法讓所有版本的IE完全忽略這些CSS規則並遵循其他規則(這會使日期標記在IE中看起來完全不同)?或者,有沒有辦法告訴IE不要顯示日期標記呢?由於我的網站剛剛開始實驗,因此在IE中顯示發佈日期並不重要。 PHP能爲我做後者嗎?

+0

在HTML中指定DOCTYPE是什麼? – raina77ow 2012-08-16 14:52:04

+0

您可以嘗試使用Modernizr(http://modernizr.com/)進行功能檢測,該功能允許您使用CSS類來確定是否支持某些功能(例如2D變換)。這通常比瀏覽器檢測更好。並且一定要包含非前綴CSS! – 2012-08-16 14:52:52

+0

@ raina77ow我開始修改現有的Wordpress佈局(我想這是默認的) '<!DOCTYPE html PUBLIC「 - // W3C // DTD XHTML 1.0 Transitional // EN」「http://www.w3。 org/TR/xhtml1/DTD/xhtml1-transitional.dtd「>' – neopirate 2012-08-17 11:31:48

回答

0

對於IE 9支持增加:

-ms-transform: rotate(-90deg);​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​ 

對於IE 8和下添加:

filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3); 

數3爲-90(270)度,0爲0度,1是90度,2度180度。

鏈接:
http://jsfiddle.net/Eqkjh/2/
http://css-tricks.com/snippets/css/text-rotation/

+0

謝謝,但我沒有尋找一個解決方案,如何爲IE瀏覽器旋轉文本,因爲我只是嘗試了這些代碼,成功地旋轉了它,但是IE認爲結果看起來很醜,我不想在那裏使用它。它似乎缺乏抗鋸齒功能,與其他瀏覽器的位置不同。 – neopirate 2012-08-17 11:34:57

相關問題