我有一个像这样的div <div class="xyz"></div>
,该div中的所有内容都在css中.如何将该div变为链接?我试着在它周围包裹一个标签,但这似乎不起作用.
谢谢!!
Bar*_*man 97
您需要将display: block;
属性分配给包装锚点.否则它将无法正确包裹.
<a style="display:block" href="http://justinbieber.com">
<div class="xyz">My div contents</div>
</a>
Run Code Online (Sandbox Code Playgroud)
运用
<a href="foo.html"><div class="xyz"></div></a>
Run Code Online (Sandbox Code Playgroud)
适用于浏览器,即使它违反了当前的HTML规范.根据HTML5草案允许.
当你说它不起作用时,你应该准确地解释你做了什么(包括jsfiddle代码是一个好主意),你期望什么,以及行为如何与你的期望不同.
目前还不清楚你所说的"div中的所有内容都在css中",但我想这意味着HTML标记中的内容真的是空的,你就像CSS一样
.xyz:before { content: "Hello world"; }
Run Code Online (Sandbox Code Playgroud)
然后可以单击整个块,内容文本看起来像链接文本.这不是你所期望的吗?
一个包裹<a>
周围是不行的(除非你设置<div>
到display:inline-block;
或display:block;
到<a>
),因为DIV是SA块级元素和<a>
不是.
<a href="http://www.example.com" style="display:block;">
<div>
content
</div>
</a>
<a href="http://www.example.com">
<div style="display:inline-block;">
content
</div>
</a>
<a href="http://www.example.com">
<span>
content
</span >
</a>
<a href="http://www.example.com">
content
</a>
Run Code Online (Sandbox Code Playgroud)
但也许你应该跳过<div>
并选择一个<span>
,或者只是平原<a>
.如果你真的想让div可点击,你可以附加一个带有onclick处理程序的javascript重定向,有些像:
document.getElementById("myId").setAttribute('onclick', 'location.href = "url"');
Run Code Online (Sandbox Code Playgroud)
但我会建议不要这样做.
小智 5
html:
<a class="xyz">your content</a>
Run Code Online (Sandbox Code Playgroud)
css:
.xyz{
display: block;
}
Run Code Online (Sandbox Code Playgroud)
这将使锚成为像div一样的块级元素.
归档时间: |
|
查看次数: |
176136 次 |
最近记录: |