继承a:链接到asp:label文本属性的css属性

时间:2009-01-21 15:15:13

标签: asp.net css

好吧,这可能是一个不可能的问题,但是我将用户控件添加到现有的cms系统(Kentico使用他们的InlineControl基类),我添加了一个标签,我已经覆盖了click事件以显示它下面的div区域。我遇到的问题是继承已设置的color,font-family的css属性;等。从父页面到标签的文本。

我试图在标签周围放置一个<a href=""></a>,它确实继承了正确的属性,但现在它需要点击并重定向,因为它跟在空白的href之后。如果我只是将标签包装在/ a中它不会继承,因为css类正在寻找一个href标签。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:2)

好的,如果我理解正确,您希望标签文字像页面上的链接一样呈现?根据您正在开发的浏览器,它可能无法理解:link:hover之类的内容。如果您有以下CSS:

a, label { color: blue; } // NOT a:link as only <a> tags can have href
a:hover, label:hover { text-decoration: underline; }

..你在那里的一部分(IE6除外)。尝试在标签内或标签周围添加<a>标记时,您遇到的另一个问题是,点击事件已应用于<label>标记,而不是<a>标记,因此正在关注该链接像平常一样。如果您改为使用链接或两者的组合,请确保覆盖链接上的点击事件return false以停止跟踪链接。

我的偏好是将链接放在标签内,然后希望关联的表单字段将获得焦点以及显示的div。你也不会有任何IE6样式问题。

答案 1 :(得分:0)

使用<asp:Label >代替<asp:HyperLink >控件。这将渲染为html作为锚点(<a >),因此可以正确设置样式。

此外,根据您的受众和您正在做的事情,这可以通过javascript完成,而不是强制回发到服务器以重新呈现可见的div。