2010-05-10 122 views
1

我也發現了類似的問題,但沒有任何的建議似乎適用於我的情況,所以這裏去...CSS文本修飾規則忽略

我與他們圖像的布赫的網頁。每張圖片都有一個標題,標記在h2標籤之間。標題是一個鏈接,那麼隨之產生的標記是這樣的:

<ul class="imagelist"> 
<li> 
<a href=""><h2>Title 1</h2></a> 
<a href=""><img src="" /></a> 
</li> 
<li> 
Image 2, etc... 
</li> 
</ul> 

所有我想要的是標題鏈接到下劃線。我試圖解決這樣的問題:

.imagelist li a h2 { color:#333; text-decoration:none; } 

它完全忽略了文本修飾規則,但尊重顏色規則。從其他問題我瞭解到,這可能是因爲一個孩子元素不能否決任何父母的文字裝飾。所以,我去尋找父元素來查看是否應用了任何明確的文本修飾規則。我沒有發現。

這讓我瘋狂,有什麼幫助嗎?

爲了完整起見,這裏是Firebug的CSS輸出,它顯示了完整的繼承等等。可能比你想要的要多,但是在這裏我看不到任何衝突。

.imagelist li a h2 { 
color:#333333; 
text-decoration:none; 
} 
main.css (line 417) 
h2 { 
font-size:14px; 
} 
main.css (line 40) 
h1, h2, h3, h4, h5, h6 { 
display:block; 
font-weight:bold; 
margin-bottom:10px; 
} 
main.css (line 38) 
h1, h2, h3, h4, h5, h6 { 
font-size:100%; 
font-weight:normal; 
} 
reset-min.css (line 7) 
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td { 
margin:0; 
padding:0; 
} 
reset-min.css (line 7) 
Inherited froma /apps/ju...mage/745 
a { 
color:#0063E2; 
} 
main.css (line 55) 
Inherited fromli 
.imagelist li { 
list-style-type:none; 
} 
main.css (line 411) 
li { 
list-style:none outside none; 
} 
reset-min.css (line 7) 
Inherited fromul.imagelist 
.imagelist { 
border-collapse:collapse; 
font-size:9px; 
} 
main.css (line 410) 
Inherited frombody 
body, form { 
color:#333333; 
font:12px arial,helvetica,clean,sans-serif; 
} 
main.css (line 36) 
Inherited fromhtml 
html { 
color:#000000; 

回答

4

試試這個:

.imagelist li a, .imagelist li a:hover{color:#333; text-decoration:none;} 
+1

:懸停是沒有必要的。 – ZippyV 2010-05-10 19:20:17

+0

啊,我沒有想到它可能是一個':hover'問題,或者他是針對'h2',而不是'a'。好的電話,和+1 =) – 2010-05-10 19:20:46

+0

原諒我的愚蠢。我的確在處理h2元素,而我應該瞄準這個鏈接。 – Ferdy 2010-05-10 19:21:45

1

嘗試切換到HTML約一點點,而HTML 5允許塊級元素是內a標籤,我不知道該HTML 4.01或XHTML呢,所以它可能是值得:

... 
<li><h2><a href="#">title 1</a></h2></li> 
... 

而且使用CSS:

a:link, 
a:visited {text-decoration: none; } 

或者,特異性是問題的情況下:

ul.imagelist li h2 a:link, 
ul.imagelist li h2 a:visited {text-decoration: none; }