Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
User interface 我需要能够改变李的背景色时,用鼠标选择。仅使用css_User Interface_Css_Frontend_Dart - Fatal编程技术网

User interface 我需要能够改变李的背景色时,用鼠标选择。仅使用css

User interface 我需要能够改变李的背景色时,用鼠标选择。仅使用css,user-interface,css,frontend,dart,User Interface,Css,Frontend,Dart,我有ul菜单与李的no a:链接,我需要能够改变李的背景色时,用鼠标选择 <div id="dvMainNavMenu"> <ul id="NavItem"> <li>Nav Item</li> <li>Nav Item</li> <li>Nav Item</li> </ul>

我有ul菜单与李的no a:链接,我需要能够改变李的背景色时,用鼠标选择

    <div id="dvMainNavMenu">
        <ul id="NavItem">
        <li>Nav Item</li> 
          <li>Nav Item</li>   
          <li>Nav Item</li> 
        </ul>
    </div>

#NavItem li  {background-color: transparent; text-decoration: none; }
#NavItem li:hover {background-color: #ff8700;}
#NavItem li:focus {background-color: #ff8700;}

  • 导航项目
  • 导航项目
  • 导航项目
#NavItem li{背景色:透明;文本装饰:无;} #NavItem li:悬停{背景色:#ff8700;} #NavItem li:focus{背景色:#ff8700;}

焦点不起作用;(有人能帮我吗?

这是可能的,只要你意识到非交互元素(交互元素是那些像
input
select
a
…)不能被聚焦。它可以响应
:active
伪类,但一旦鼠标被释放就不会持续存在(如果移动鼠标,将被默认的选择操作覆盖):

重要的是要记住CSS用于表示,JavaScript(以及可能的其他语言,如are)用于HTML提供的内容之上的功能/行为/交互层


使用JavaScript不是一种“欺骗”形式。

这是可能的,只要你意识到非交互元素(交互元素是那些像
输入
选择
一个
…)不能被聚焦。它可以响应
:活动的
伪类,但一旦鼠标被释放就不会持续(如果移动鼠标,将被默认的选择操作覆盖):

重要的是要记住CSS用于表示,JavaScript(以及可能的其他语言,如are)用于HTML提供的内容之上的功能/行为/交互层


使用JavaScript不是一种“欺骗”形式。

元素不是输入或“值得关注”[)/™/你不会承认CSS必须提供的
:focus
:active
等伪类。你可能会使用锚(
)来破解它但是现在你只需要提供一个
href
目标,而且,在没有javascript干预的情况下,你要么将窗口滚动到一个命名的锚/匹配ID,要么尝试使用
破解任何其他可能产生的效果。如果没有
href
你将失去很多固有的能力

话虽如此,一点javascript就可以在重量(相对)较轻的情况下完成你想要做的事情。而且,最坏的情况是,一个不支持javascript或禁用javascript的浏览器将退回到只有
:hover
功能的状态

有了这些,下面是javascript的替代方案:

创建一个类:

#NavItem .active { background-color: #FF8700; }
然后:


非输入或“值得关注”的元素[)/™/你不会承认CSS必须提供的
:focus
:active
等伪类。你可能会使用锚(
)来破解它但是现在你只需要提供一个
href
目标,而且,在没有javascript干预的情况下,你要么将窗口滚动到一个命名的锚/匹配ID,要么尝试使用
破解任何其他可能产生的效果。如果没有
href
你将失去很多固有的能力

话虽如此,一点javascript就可以在重量(相对)较轻的情况下完成你想要做的事情。而且,最坏的情况是,一个不支持javascript或禁用javascript的浏览器将退回到只有
:hover
功能的状态

有了这些,下面是javascript的替代方案:

创建一个类:

#NavItem .active { background-color: #FF8700; }
然后:

如果您将与链接结合使用会怎样?负面影响是一次只能突出显示一个链接。作为一个非常粗略的演示,或者查看下面的HTML/CSS

    <div id="dvMainNavMenu">
      <ul id="NavItem">
        <li><a href="#item1" id="item1">Nav Item</a></li>   
        <li><a href="#item2" id="item2">Nav Item</a></li> 
        <li><a href="#item3" id="item3">Nav Item</a></li> 
      </ul>
    </div>

#NavItem li  {background-color: transparent; text-decoration: none; }
#NavItem li:hover {background-color: #ff8700;}
#NavItem li:focus {background-color: #ff8700;}
#NavItem li a { display:block; }
#NavItem li a:target { background-color:black; }

#NavItem li{背景色:透明;文本装饰:无;} #NavItem li:悬停{背景色:#ff8700;} #NavItem li:focus{背景色:#ff8700;} #NavItem li a{display:block;} #NavItem li a:目标{背景色:黑色;}
​ 这显然只适用于特定场景,因此它可能适合也可能不适合您正在尝试做的事情和。

如果您将与链接结合使用会怎么样。消极的是,您一次只能突出显示一个。作为一个非常粗略的演示,或者查看下面的HTML/CSS

    <div id="dvMainNavMenu">
      <ul id="NavItem">
        <li><a href="#item1" id="item1">Nav Item</a></li>   
        <li><a href="#item2" id="item2">Nav Item</a></li> 
        <li><a href="#item3" id="item3">Nav Item</a></li> 
      </ul>
    </div>

#NavItem li  {background-color: transparent; text-decoration: none; }
#NavItem li:hover {background-color: #ff8700;}
#NavItem li:focus {background-color: #ff8700;}
#NavItem li a { display:block; }
#NavItem li a:target { background-color:black; }

#NavItem li{背景色:透明;文本装饰:无;} #NavItem li:悬停{背景色:#ff8700;} #NavItem li:focus{背景色:#ff8700;} #NavItem li a{display:block;} #NavItem li a:目标{背景色:黑色;}

这显然只适用于特定的场景,因此它可能适合也可能不适合您尝试执行的操作。

在单击时选择?恐怕:focus/:active在较新的浏览器中不再像那样工作。嗯,似乎工作正常:@j08691:在什么浏览器上测试?IE9,最新的FF/Chrome不这样工作…@BradChristie-适合我在Chrome和FF.以及IE8.Nevermind中,我误读了这个问题。我认为他只是需要悬停。在点击中选择?我担心:focus/:active在新浏览器中不再像那样工作。嗯,似乎工作正常:@j08691:在什么浏览器上测试?IE9,最新的FF/Chrome不这样工作…@BradChristie-在Chrome和FF.以及IE8中对我有效“没关系,我误读了这个问题。我以为他只是需要悬停一下。@DavidThomas:你读了我关于这不可能的评论,对吗?这将使这成为一个[功能性]替代方案。不,我没有。但是,尽管你是对的,这肯定是一个错误。”(
    <div id="dvMainNavMenu">
      <ul id="NavItem">
        <li><a href="#item1" id="item1">Nav Item</a></li>   
        <li><a href="#item2" id="item2">Nav Item</a></li> 
        <li><a href="#item3" id="item3">Nav Item</a></li> 
      </ul>
    </div>

#NavItem li  {background-color: transparent; text-decoration: none; }
#NavItem li:hover {background-color: #ff8700;}
#NavItem li:focus {background-color: #ff8700;}
#NavItem li a { display:block; }
#NavItem li a:target { background-color:black; }