Html 如何在此下拉菜单中向链接添加样式

Html 如何在此下拉菜单中向链接添加样式,html,css,Html,Css,我在一个网站上找到了这个下拉菜单: <style> body {background: #E3CAA1;} ul { font-size: 13px; font-family: 'Lucida Grande', 'Helvetica Neue', Helvetica, Arial, sans-serif; text-align: center; display: inline; margin: 0; padding: 15px 4px 17px 0; li

我在一个网站上找到了这个下拉菜单:

<style>
body {background: #E3CAA1;}
ul {
  font-size: 13px;
  font-family: 'Lucida Grande', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  text-align: center;
  display: inline;
  margin: 0;
  padding: 15px 4px 17px 0;
  list-style: none;
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
  -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
}
ul li {
  font: bold 12px/18px sans-serif;
  display: inline-block;
  margin-right: -4px;
  position: relative;
  padding: 15px 20px;
  background: #fff;
  cursor: pointer;
  -webkit-transition: all 0.2s;
  -moz-transition: all 0.2s;
  -ms-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}
ul li:hover {
  background: #555;
  color: #fff;
}
ul li ul {
  padding: 0;
  position: absolute;
  top: 48px;
  left: 0;
  width: 150px;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  box-shadow: none;
  display: none;
  opacity: 0;
  visibility: hidden;
  -webkit-transiton: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -ms-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  -transition: opacity 0.2s;
}
ul li ul li { 
  background: #555; 
  display: block; 
  color: #fff;
  text-shadow: 0 -1px 0 #000;
}
ul li ul li:hover { background: #666; }
ul li:hover ul {
  display: block;
  opacity: 1;
  visibility: visible;
}
</style>
<div style="text-align: right;padding: 20px 50px 150px;">
<ul><li>Home</li>
  <li><a href="#">About</a></li>
  <li>
    Portfolio
    <ul>
      <li>Web Design</li>
      <li>Web Development</li>
      <li>Illustrations</li>
    </ul>
  </li>
  <li>Blog</li>
  <li>Contact</li>
</ul>
</div>

现在它几乎可以正常工作了,但链接的悬停效果只有在我将鼠标悬停在链接上时才会发生,但我希望它在光标进入块时即
  • 的背景发生变化时发生。 你能帮我解决这个问题吗?
    另外,我希望整个
  • 块充当链接,即用户不必只点击文本,而是点击块内的任何位置。请帮助。

    尝试将CSS更改为:

    ul li:hover < ul li a, ul li a:hover {
        background:#555;
        colof:#fff;
    }
    
    ul li:hover

      此外,在修改前启动的CSS也能完美工作:

      以下是DrRoach答案中更新的JSFIDLE:

      您需要将锚定标记放在列表标记之外,以使整个块可单击,并且我稍微修改了CSS,以按照您希望的方式更改颜色,即:

      ul > a {
          text-decoration:none;
          color:#000;
      }
          ul ul > a {
      text-decoration:none;
          color: #fff;
      }
      

      试试这个:

      <style>
      body {background: #E3CAA1;}
      ul {
        font-size: 13px;
        font-family: 'Lucida Grande', 'Helvetica Neue', Helvetica, Arial, sans-serif;
        text-align: center;
        display: inline;
        margin: 0;
        padding: 15px 4px 17px 0;
        list-style: none;
        -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
        -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
        box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
      }
      ul li {
        font: bold 12px/18px sans-serif;
        display: inline-block;
        margin-right: -4px;
        position: relative;
        padding: 15px 20px;
        background: #fff;
        cursor: pointer;
        -webkit-transition: all 0.2s;
        -moz-transition: all 0.2s;
        -ms-transition: all 0.2s;
        -o-transition: all 0.2s;
        transition: all 0.2s;
      }
      ul a {
          text-decoration:none;
          color:#000;
      }
      ul li:hover {
        background: #555;
        color: #fff;
      }
      ul li ul {
        padding: 0;
        position: absolute;
        top: 48px;
        left: 0;
        width: 150px;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
        display: none;
        opacity: 0;
        visibility: hidden;
        -webkit-transiton: opacity 0.2s;
        -moz-transition: opacity 0.2s;
        -ms-transition: opacity 0.2s;
        -o-transition: opacity 0.2s;
        -transition: opacity 0.2s;
      }
      ul li ul li { 
        background: #555; 
        display: block; 
        color: #fff;
        text-shadow: 0 -1px 0 #000;
      }
      ul li ul li:hover { background: #666; }
      ul li:hover ul {
        display: block;
        opacity: 1;
        visibility: visible;
      }
      </style>
      <div style="text-align: right;padding: 20px 50px 150px;">
      <ul><li>Home</li>
        <a href="#"><li>About</li></a>
        <li>
          Portfolio
          <ul>
            <li>Web Design</li>
            <li>Web Development</li>
            <li>Illustrations</li>
          </ul>
        </li>
        <li>Blog</li>
        <li>Contact</li>
      </ul>
      </div>
      
      
      正文{背景:#E3CAA1;}
      保险商实验室{
      字体大小:13px;
      字体系列:“Lucida Grande”,“Helvetica Neue”,Helvetica,Arial,无衬线;
      文本对齐:居中;
      显示:内联;
      保证金:0;
      填充:15px 4px 17px 0;
      列表样式:无;
      -webkit盒阴影:0.5pxRGBA(0,0,0,0.15);
      -moz盒阴影:0.5pxrgba(0,0,0,0.15);
      长方体阴影:0.5pxRGBA(0,0,0,0.15);
      }
      ulli{
      字体:粗体12px/18px无衬线;
      显示:内联块;
      右边距:-4px;
      位置:相对位置;
      填充:15px 20px;
      背景:#fff;
      光标:指针;
      -webkit转换:所有0.2秒;
      -moz转换:全部为0.2s;
      -ms转换:均为0.2s;
      -o-过渡:均为0.2s;
      过渡:均为0.2s;
      }
      ul a{
      文字装饰:无;
      颜色:#000;
      }
      ulli:悬停{
      背景:#555;
      颜色:#fff;
      }
      ul li ul{
      填充:0;
      位置:绝对位置;
      顶部:48px;
      左:0;
      宽度:150px;
      -webkit盒阴影:无;
      -莫兹盒阴影:无;
      盒影:无;
      显示:无;
      不透明度:0;
      可见性:隐藏;
      -webkit transiton:不透明度0.2s;
      -moz转变:不透明度0.2s;
      -ms转换:不透明度0.2s;
      -o-转变:不透明度0.2s;
      -过渡:不透明度0.2s;
      }
      ul li ul li{
      背景:#555;
      显示:块;
      颜色:#fff;
      文本阴影:0-1px0#000;
      }
      ulli ulli:悬停{背景:#666;}
      ul-li:悬停ul{
      显示:块;
      不透明度:1;
      能见度:可见;
      }
      
      • 文件夹
        • 网页设计
        • 网络开发
        • 插图
      • 博客
      • 接触

      观看演示

      Html在哪里?fiddle?在何处将样式发送到元素后,我还希望整个
    • 块充当链接,即用户不受限制只能单击文本,而是单击块内的任何位置,请帮助。移动您fiddle不起作用链接显示为没有样式的链接。如果现在访问它,您将看到底部的两个链接一行行CSS为链接设置了样式。
      ul > a {
          text-decoration:none;
          color:#000;
      }
          ul ul > a {
      text-decoration:none;
          color: #fff;
      }
      
      <style>
      body {background: #E3CAA1;}
      ul {
        font-size: 13px;
        font-family: 'Lucida Grande', 'Helvetica Neue', Helvetica, Arial, sans-serif;
        text-align: center;
        display: inline;
        margin: 0;
        padding: 15px 4px 17px 0;
        list-style: none;
        -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
        -moz-box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
        box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
      }
      ul li {
        font: bold 12px/18px sans-serif;
        display: inline-block;
        margin-right: -4px;
        position: relative;
        padding: 15px 20px;
        background: #fff;
        cursor: pointer;
        -webkit-transition: all 0.2s;
        -moz-transition: all 0.2s;
        -ms-transition: all 0.2s;
        -o-transition: all 0.2s;
        transition: all 0.2s;
      }
      ul a {
          text-decoration:none;
          color:#000;
      }
      ul li:hover {
        background: #555;
        color: #fff;
      }
      ul li ul {
        padding: 0;
        position: absolute;
        top: 48px;
        left: 0;
        width: 150px;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
        display: none;
        opacity: 0;
        visibility: hidden;
        -webkit-transiton: opacity 0.2s;
        -moz-transition: opacity 0.2s;
        -ms-transition: opacity 0.2s;
        -o-transition: opacity 0.2s;
        -transition: opacity 0.2s;
      }
      ul li ul li { 
        background: #555; 
        display: block; 
        color: #fff;
        text-shadow: 0 -1px 0 #000;
      }
      ul li ul li:hover { background: #666; }
      ul li:hover ul {
        display: block;
        opacity: 1;
        visibility: visible;
      }
      </style>
      <div style="text-align: right;padding: 20px 50px 150px;">
      <ul><li>Home</li>
        <a href="#"><li>About</li></a>
        <li>
          Portfolio
          <ul>
            <li>Web Design</li>
            <li>Web Development</li>
            <li>Illustrations</li>
          </ul>
        </li>
        <li>Blog</li>
        <li>Contact</li>
      </ul>
      </div>