我希望将整个div
链接设为a
标记。当然这可能是js的可能,但我很想知道这是否可以只用css。
我有这个:
#my_div {
width: 200px;
background-color: #090;
}
#my_div:hover {
background-color: #0f0;
}
页面结构为:
<div id="my_div"><a href="http://google.com">link</a></div>
答案 0 :(得分:3)
您可以将内联元素设置为块级元素,方法是将display
属性设置为block
:
/* Make all a tags that are decedents of the
element with an id of `my_div` be displayed as block level elements */
#my_div a {
display: block;
width: 200px;
height: 100px;
text-align: center;
background-color: #090;
}
/* Handle the color change on hover */
#my_div a:hover { background-color: #0f0; }
您实际上并不需要换行div
- 如果您为其指定了类或ID,则可以直接定位特定的a
标记。
答案 1 :(得分:2)
试试这个:
#my_div a {
display: block;
width: 100%;
}
答案 2 :(得分:2)
您无法使用CSS创建元素,但您可以使用div
标记包裹a
。它看起来像这样:
<a href="http://google.com"><div id="my_div"></div></a>
这使得整个div成为href
所有内容的链接。
CSS3现在确实拥有content
属性,但我认为你不能将原始HTML放入其中。如果有人有权访问您的.css
文件,那将是非常糟糕的安全性......
无论如何,我认为上述解决方案是实现您所要求的最简单方法。
答案 3 :(得分:1)
您需要将pseude类设置为a标签而不是div:
#my_div a:hover {
background-color: #0f0;
}
应该这样做: - )
答案 4 :(得分:0)
我认为你应该查看发布到堆栈溢出的这个问题。 Make a div into a link 这是关于如何将div设为链接的第一个结果。
答案 5 :(得分:0)
请: