我可以仅使用CSS更改HTML链接的引用吗?

问题描述:

我目前在我的网站有各种链接。但是,其中一些将在某些点停用。我想知道是否可以使用ONLY CSS(无JavaScript或任何类似)更改链接的href属性。最好是使用CSS 2或1的解决方案,但如果一个选项仅存在于CSS 3中,那么也可以。我可以仅使用CSS更改HTML链接的引用吗?

请注意,我知道有很多方法可以做到这一点。我只想知道是否有CSS技巧。

+0

也许这会有所帮助,我没有自己尝试过,但看到最后一篇文章:http://www.webmasterworld.com/css/3290149.htm – AllisonC 2011-06-15 15:14:37

+0

上述内容无法创建不同的链接。 您可以使用可见性属性更改链接的可见性吗? – 2011-06-15 15:23:34

不,这不是CSS的用处。 CSS代表层叠样式表。更改目标网址与页面的样式无关。

正如你所说,这种事情还有很多其他的选择。 JavaScript(或jQuery)将是最好的解决方案。

你不能用CSS做到这一点 - 没有“隐藏的技巧”。

否 - CSS仅用于将样式应用于元素,而不改变其工作方式。

CSS3具有对属性起作用的选择器,例如, “href”,但在早期版本的CSS中的支持很粗略。

最重要的是,你不能直接禁用的链接,但你可以尝试做一个绳-A-涂料:

HTML:

<a href="my-page.html" class="live-link">Click here</a><a href="my-page.html" class="dead-link">Click here</a> 

CSS3:

a[href='my-page.html'].live-link {display:hidden} 
a[href='my-page.html'].dead-link {display:inline} 

......这只是概念证明,但你可能需要一些逻辑来决定何时显示“live-link”和“dead-link”的显示值。

+0

*会*起作用,但对SEO很糟糕。让您的网站充斥着死链接(甚至只是隐藏的链接)很可能会导致问题。 – thirtydot 2011-06-15 15:27:40

+0

@thirtydot非常好的一点!可能最好的选择是,如果页面不可点击,则页面上根本没有链接... – Rocjoe 2011-06-17 00:43:24