我有以下的标记,
<ul id="menu">
<li><a href="#">Something1</a></li>
<li><a href="#">Something2</a></li>
<li><a href="#">Something3</a></li>
<li><a href="#">Something4</a></li>
</ul>
在<li>
是有点大,在其左边的一个小图像,我必须真正对点击<a>
激活链接。 我怎样才能让在点击<li>
激活链接?
EDIT1:
ul#menu li
{
display:block;
list-style: none;
background: #e8eef4 url(images/arrow.png) 2% 50% no-repeat;
border: 1px solid #b2b2b2;
padding: 0;
margin-top: 5px;
}
ul#menu li a
{
font-weight: bold;
text-decoration: none;
line-height: 2.8em;
padding-right:.5em;
color: #696969;
}
Answer 1:
#menu li { padding: 0px; }
#menu li a { margin: 0px; display: block; width: 100%; height: 100%; }
它可能需要一些调整的IE6,但这是你如何做到这一点。
Answer 2:
作为Marineio说,你可以使用onclick
的属性<li>
改变location.href
,通过JavaScript:
<li onclick="location.href='http://example';"> ... </li>
或者,你可以删除的任何利润或填充<li>
和一个大的填充添加到左侧<a>
避免文本会在子弹。
Answer 3:
刚抛出这个选项在那里:
<ul id="menu">
<a href="#"><li>Something1</li></a>
<a href="#"><li>Something2</li></a>
<a href="#"><li>Something3</li></a>
<a href="#"><li>Something4</li></a>
</ul>
这是我在菜单中使用的样式,它使列表项本身的超链接(类似于一个如何使图像的链接)。
对于造型,我通常采用这样的:
nav ul a {
color: inherit;
text-decoration: none;
}
那么我可以不管造型适用于<LI>,我想。
注:验证器会抱怨这种方法,但如果你和我一样,不基地周围的生活,这应该只是罚款。
Answer 4:
只需添加换链接文本在“P”标签或类似的东西,并添加margin和padding到该元素,这样就不会影响到MiffTheFox给你,即设置
<li> <a href="#"> <p>Link Text </p> </a> </li>
Answer 5:
这将使整个<li>
对象作为链接:
<li onclick="location.href='page.html';" style="cursor:pointer;">...</li>
Answer 6:
jqyery这是与jQuery少一些较短的另一个版本。 假设<a>
元件是德内部<li>
元素
$(li).click(function(){
$(this).children().click();
});
Answer 7:
以下似乎工作:
ul#menu li a {
color:#696969;
display:block;
font-weight:bold;
line-height:2.8;
text-decoration:none;
width:100%;
}
Answer 8:
或者,你可以创建你的最后一个空链接<li>
<a href="link"></a>
.menu li{position:relative;padding:0;}
.link{
bottom: 0;
left: 0;
position: absolute;
right: 0;
top: 0;
}
这将创建一个完整的可点击<li>
并保持您的格式在您的真实链接。 这可能是有用<div>
标签,以及
Answer 9:
你可以尝试LI标签内的“点击”事件,并修改“location.href”中的JavaScript。
您也可以尝试放置一个标签内里的标签,但是这可能不是有效的HTML。
Answer 10:
我发现了一个简单的解决方案:让标签“礼‘是标签’一”里面:
<a href="#"><li>Something1</li></a>
Answer 11:
锚定HREF链接适用于李:
#menu li a {
display:block;
}
Answer 12:
如何使通过点击<LI>启用HTML链接?
通过使您的大环为贵丽:只要将指令
display: block;
从里到和你做。
那是:
#menu li
{
/* no more display:block; on list item */
list-style: none;
background: #e8eef4 url(arrow.gif) 2% 50% no-repeat;
border: 1px solid #b2b2b2;
padding: 0;
margin-top: 5px;
}
#menu li a
{
display:block; /* moved to link */
font-weight: bold;
text-decoration: none;
line-height: 2.8em;
padding-right:.5em;
color: #696969;
}
附注:您可以从两个选择删除“UL”:#menu是,除非你需要给重这两个规则,以覆盖其它指令足够的指示。
Answer 13:
使用jQuery,所以你不必写上内嵌的JavaScript <li>
元素:
$(document).ready(function(){
$("li > a").each(function(index, value) {
var link = $(this).attr("href");
$(this).parent().bind("click", function() {
location.href = link;
});
});
});
文章来源: How to make the HTML link activated by clicking on the
?