2010-11-09 164 views
1

我有以下标记的文档:在li元素中设置背景颜色会使文本变得透明。 (IE8)

<li style="background-color: #{background_color}; color: black;"> 
    <a href="#{url}" title="#{action_name}" style="color: black;" 
    <span style='color: black;'>action_name</span> 
    </a> 
</li> 

但是,每当我设置BACKGROUND_COLOR到任何东西,它会导致链接文本变得透明。什么可能导致这种情况?

回答

4

您还没有指定链接颜色 - 只有文字颜色...这与不是相同。对于链接,您希望明确地指定其属性...并且最好不要使用内嵌样式;例如:

<style type="text/css"> 
    a.mainLink:link { color : black; } //this order is important 
    a.mainLink:visited { color : black; } // "L" o "V" e, "H" "A" t e 
    a.mainLink:hover { color : white; } // is an easy way to remember. 
    a.mainLink:active { color : black; } 

    li.mainList { background : #555; } 
</style> 

,然后你的链接和列表:

<li class="mainList">  
<a href="{url}" title="action_name" class="mainLink">'action_name'</a> 
</li> 

直列风格是动态生成的内容不错,但它的更好(更可预测的),在外部定义样式样式表或<head>标签中。