html - 如何使整个 <li> 元素成为一个链接?

标签 html css

我无法使整个 li 元素可点击。我试过显示属性,但没有任何帮助。这是一个代码:

#top_menu ul li {
  position: relative;
  list-style: none;
  float: left;
  display: block;
}

#top_menu ul li a {
  display: block;
  padding: 0 14px;
  margin: 6px 0;
  line-height: 28px;
  text-decoration: none;
  color: #fff;
}

#top_menu ul li:hover>a {
  color: #8fde62;
}

#top_menu ul ul {
  position: absolute;
  opacity: 0;
  background: rgba(70, 70, 70, 0.7);
}

#top_menu ul li:hover>ul {
  opacity: 1;
}

#top_menu ul ul li {
  height: 0;
  overflow: hidden;
  padding: 0;
}

#top_menu ul li:hover>ul li {
  height: 36px;
  overflow: visible;
  padding: 0;
}

#top_menu ul ul li a {
  padding: 4px 0 4px;
  margin: 0;
  border: none;
  border-bottom: 1px solid #353539;
}
<ul>
  <li><a href="#">Additional</a>
    <ul>
      <li><a href="#">Commands</a></li>
      <li><a href="#">Guides</a></li>
    </ul>
  </li>
</ul>

结果如下(列表左侧有空白-未激活):

enter image description here

那我做错了什么?我该如何解决?

最佳答案

左边的填充是由 <ul> 引起的.如果将其设置为 padding: 0; ,这将删除空空间并允许您根据需要从 <li> 设置样式或 <a>

Example

关于html - 如何使整个 <li> 元素成为一个链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43616351/

相关文章:

html - 屏幕元素被 map 挡住了?

html - 如果我想控制行之间的高度,<br/> 的替代方法是什么?

php - 在 for 循环的下拉列表中选择 mysql php 预加载

Javascript 异步事件

image - CSS 背景图像动画不起作用

html - 如何使网页正文居中?

javascript - 将事件类应用于其父 li 元素时,如何覆盖 anchor 元素的字体颜色?

html - 引导导航栏中的 vue js

html - 无法将导航栏品牌图像位置更改为在导航栏中垂直居中

javascript - 寻找(可能是 CSS)涉及移动对象的设计解决方案