我想让我的整个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>
您可以通过将内联元素的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; }
您实际上并不需要包装-如果您给它一个类或 id,div
您可以直接定位特定标签。a
试试这个:
#my_div a {
display: block;
width: 100%;
}
你不能用 CSS 制作元素,但你可以div
用a
标签来包装你的元素。它看起来像这样:
<a href="http://google.com"><div id="my_div"></div></a>
这使得整个 div 链接到您的任何href
内容。
CSS3content
现在确实具有该属性,但我认为您不能将原始 HTML 放入其中。如果有人可以访问您的.css
文件,那将是非常糟糕的安全性...
无论如何,我认为上述解决方案是实现您所要求的最简单的方法。
您需要将您的伪类设置为 a 标签而不是 div:
#my_div a:hover {
background-color: #0f0;
}
那应该做它的工作:-)
我认为您应该查看发布到堆栈溢出的这个问题。 将 div 设为链接 这是 Google 上关于如何将 div 设为链接的第一个结果。
请:
您不清楚您的意思是没有“a href”还是没有使用“<a”标签。
如果你的意思是后者,我能想到的唯一另一种方法是让它成为一个表单提交按钮。