这可能很容易回答..我有一个 div,里面有一些文本,在那个文本中也可以有一些链接,例如你好http://google.com你好http://bing.com。
问题是如何使用 css 使这些链接显示为超链接。
谢谢
编辑:
我刚刚看到,在发布这个问题后,链接会自动显示为超链接。我需要同样的东西。
这可能很容易回答..我有一个 div,里面有一些文本,在那个文本中也可以有一些链接,例如你好http://google.com你好http://bing.com。
问题是如何使用 css 使这些链接显示为超链接。
谢谢
编辑:
我刚刚看到,在发布这个问题后,链接会自动显示为超链接。我需要同样的东西。
这不是 CSS 可以解决 AFAIK 的要求。您需要使用 Javascript 之类的东西来处理 DIV 中的文本,以查找类似于 URL 的内容并在它们周围放置锚标记。对于您提交答案时发生的情况,我的猜测是 Stackoverflow 上的服务器端代码做了同样的事情,只是在服务器上没有在您的浏览器中实时呈现。
没有将 URL 转换为链接的纯 CSS 解决方案。
这是一个 PHP 代码片段的示例,它正是这样做的: http: //css-tricks.com/snippets/php/find-urls-in-text-make-links/
这个 SO 答案有一个使用 Javascript 的解决方案,可以说更优雅:
function replaceURLWithHTMLLinks(text) {
var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
return text.replace(exp,"<a href='$1'>$1</a>");
}
试试这个
<style type="css/text">
A:link {text-decoration: none}
A:hover {text-decoration: underline;}
</style>
<body>
<div id="link">
<A href="http://www.google.com">Google</A>
<A href="http://www.yahoo.com">yahoo</A>
</div>
javascript
来解决这个问题。像这样:
function replaceURLWithHTMLLinks(text) {
var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
return text.replace(exp,"<a href='$1'>$1</a>");
}
请检查:stackoverflow 问题