首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >将下拉菜单添加到导航栏中

将下拉菜单添加到导航栏中
EN

Stack Overflow用户
提问于 2014-07-27 08:40:13
回答 2查看 685关注 0票数 0

我只是一个对HTML,CSS,PHP,javaScript的初学者。我的下拉菜单到导航栏不起作用。当我把鼠标放在导航栏的链接上时,没有下拉菜单。需要某个人的帮助。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<head>

      #menu {
             width:1060px;
             margin:auto;
             padding:0px 0px 0px 0px;
             position:relative;
             }

      #menu ul {
                height:25px;
                font-size:20px;
                font-family:Arial, Helvetica, sans-serif;
                font-weight:bold;
                text-align:center;
                background-color:#8AD9FF;
                border-radius:18px;
                margin-top:10px;
                margin-bottom:5px;
                list-style:none;
               }

       #menu ul li{
                   border-style:solid;
                   border-width:2px;
                   border-bottom:none;
                   border-top:none;
                   border-color:#0000FF;
                   display:inline-block;
                   text-decoration:none;
                   color:#FF0000;
                   padding-bottom:0px;
                   padding-top:0px;
                   margin-right:-8px;
                  }

        #menu ul li a {
                       padding-left:25px;
                       padding-right:25px
                      }

        #menu ul li a:link{
                           color:#3366CC;
                           text-decoration:none;
                          }

        #menu ul li a:visited{
                              color:#3366CC;
                              text-decoration:none;
                             }

        #menu ul li a:hover{
                            background-color:#3399FF;
                            text-decoration:underline;
                           }

        #menu ul ul {
                     display:none;
                     width:125px;
                    }

        #menu ul li a:hover > ul {
                                    margin:0px;
                                    padding:0px;
                                 }

        #menu ul li a:hover > ul li {
                                     float:none;
                                     display:block;
                                    }

        #menu ul li a:hover > ul li a {
                                       color:#3366CC;
                                       min-width:150px;
                                      }

        #menu ul li a:hover > ul li a:hover {
                                               background-color:#3399FF;
                                               text-decoration:underline;
                                             }

        #menu ul li {position:relative;}

        #menu ul li ul {
                          position:absolute;
                          top:30px;
                          left:0px;
                        }

</head>

<body>

      <div id="menu">
          <ul>
              <li><a href="#">Home</a></li> 
              <li><a href="#">College</a>
                  <ul>
                      <li><a href="#">Faculties & Departments</a></li>
                      <li><a href=#"">Centres</a></li>
                      <li><a href="#">College Facts</a></li>
                      <li><a href="#">Awards</a></li>
                  </ul>
              </li>
              <li><a href="">Education</a>
                  <ul>
                       <li><a href="#">Pahrmacy Law Exam Review Course</a></li>
                       <li><a href="#">Doctor Of Pharm Degree (Pharm. D.)</a></li>
                       <li><a href="#">Graduate Programs</a></li>
                       <li><a href="#">Online MS Programs</a></li>
                  </ul>
              </li>
              <li><a href="#">Research</a>
                  <ul>
                      <li><a href="#">Medicina lChemistry</a></li>
                      <li><a href="#">Doctor Of Pharm Degree (Pharm. D.)</a></li>
                      <li><a href="#">Graduate Programs</a></li>
                      <li><a href="#">Online MS Programs</a></li>
                  </ul>
              </li>
              <li><a href="#">Faculty &amp; Staff</a>
                   <ul>
                       <li><a href="#">Faculty Directory</a></li>
                       <li><a href="#">Staff Dierctory</a></li>
                   </ul>
              </li>
              <li><a href="#">News</a></li>
         </ul>
    </div>

</body>

EN

回答 2

Stack Overflow用户

发布于 2014-07-27 08:56:28

看下面的代码

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 #menu ul li a:hover > ul {
   float:none;
    display:block;
  }

上述代码将在子级别悬停锚元素时显示它们。但是在您的代码中,它是一个同级元素,而不是子元素。因此,请使用下一个兄弟元素语法,如下所示。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 #menu ul li a:hover + ul {
   float:none;
    display:block;
  }

但是在这之后,你必须做很多事情来更好地处理你的菜单。这将只修复悬停显示问题。

DEMO

票数 1
EN

Stack Overflow用户

发布于 2014-07-27 09:13:30

您可以不使用JS或PHP来完成这个任务。在大多数CSS中都有一个额外的a标记。当有人在锚上盘旋时,您不应该显示嵌套的ul,当有人在列表项上盘旋时,您应该显示它:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#menu ul li ul { 
  display: none; 
}
#menu ul li:hover ul { 
  display: block; 
}

同样,上面的样式隐藏了整个嵌套的ul,而不是每个li,这很麻烦。只显示和隐藏一件事:包含元素。

我推荐更多的组织来保持秩序。

它可以帮助您编写ul ul{},而不是编写ul li ul{},至少在这段代码变得对您来说很自然之前是如此。

这里还有很多额外的伪元素。例如:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#menu ul li a:hover > ul li a:hover {
  background-color:#3399FF;
  text-decoration:underline;
}

不需要第一个a标记上的伪元素a(无论如何都是在li标记上)。由于您只能在悬停时看到第二个a标记,所以它可以一直保持这种样式:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#menu ul li ul li a:hover {
  background-color:#3399FF;
  text-decoration:underline;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24983092

复制
相关文章
SQL数据库-新增字段时,给默认值的方法
alter table 表名 ADD 字段 int NOT NULL DEFAULT 0
Lic工作室
2021/04/29
1.9K0
SQL数据库-新增字段时,给默认值的方法
关于conda 更新时权限的问题
就被告知以下错误:PermissionError(13,'Permission denied)
戈贝尔光和热
2018/12/27
2.1K0
hibernate 插入数据时让数据库默认值生效
用hibernate做数据库插入操作时,在数据库端已经设置了对应列的默认值,但插入的数据一直为null。查找资料发现,原来是hibernate的配置项在作怪。 Hibernate允许我们在映射文件里控制insert和update语句的内容.比如在映射文件中<property 元素中的update属性设置成为false,那么这个字段,将不被包括在基本的update语句中,修改的时候,将不包括这个字段了.insert同理.dynamic动态SQL语句的配置也是很常用的.下面介绍配置SQL语句的具体属性: 1)
小柒2012
2018/04/13
1.5K0
更新时 Fiber 节点能否复用?
当产生更新时,workInProgressTree 的 Fiber 节点有两种方式生成:
玖柒的小窝
2021/12/07
5280
Linq to Sql 更新数据时容易忽略的问题
越来越多的朋友喜欢用Linq to Sql来进行开发项目了,一般我们都会遇到CRUD等操作,不可否认,在查询方面Linq真的带来很大的便利,性能方面也表现不错,在插入操作和删除操作中,Linq的表现也还不错,但是在更新某条记录的时候,性能就相对比较弱了,我们一般会使用ExecuteSql等方法来执行脚本。 不过有时候,我们还是会使用Linq to Sql来进行Update,执行的步骤:获取一个记录-〉更新字段 -〉submitChanges() 昨天遇到了一个问题,流程都没有错,但是更新的时候始终没有更新到
脑洞的蜂蜜
2018/02/01
1.3K0
成员变量的默认值
int类型的默认值是0 String类型的默认值是null double类型的默认值是0.0d Integer类型的默认值是null Long类型的默认值是null long类型的默认值是0L float类型的默认值是0.0f char类型的默认值是\u0000 byte类型的默认值是(byte)0 short类型的默认值是(short)0
gfu
2019/09/18
2.6K0
TortoiseSVN 从 GitHub 更新时发生异常
使用 TortoiseSVN 从 GitHub 仓库 Update 时,弹出错误提示对话框:
mzlogin
2020/04/16
1.3K0
TortoiseSVN 从 GitHub 更新时发生异常
使用 TortoiseSVN 从 GitHub 仓库 Update 时,弹出错误提示对话框:
零式的天空
2022/03/28
1.2K0
MySQL 5.7建表时date类型提示默认值类型错误的问题处理
报的错误是时间的默认值有错误,查阅后发现原来是 MySQL 5.7 版本开始有了一个 STRICT MODE(严格模式),此模式中对默认值做了一些限制。
用户7657330
2021/01/07
3.3K0
使用dbms_stat采集统计信息时estimate_percent和cascade的默认值
收集统计信息可以用dbms_stats包,通常用这样的语法:exec dbms_stat.gather_table_stats(ownname=>'xxx', tabname=>'xxx', estimate_percent=>xxx, method_opt=>'xxx', cascade=>xxx);
bisal
2019/01/29
2.8K0
当我学python时遇见的问题汇总(持续更新)
PS:一开始我在cmd里面安装过pygame的,但是我用IDLE运行时还是出错,于是只能自己去网上下载来安装
天天Lotay
2022/12/01
5510
当我学python时遇见的问题汇总(持续更新)
解决多个版本的python共存时的问题 => 持续更新
WINDOWS Q1: 从命令行启动只能通过python 无法区别不同版本的python(比如2.7和3.4),实际上只能启动某一个特定版本 A1: 可以分别将不同版本的python安装根目录下的py
拓荒者
2019/03/16
9070
Spring Data默认值的错误
Spring Data有很多配置的默认值,但不一定都适合你。如一个依赖Cassandra 的项目,有时写入数据后,并不能立马读到。这种错误并没有什么报错,一切都是正常的,就是读不到数据。
JavaEdge
2023/01/15
1.1K0
SQL Server2000导出数据时包含主键、字段默认值、描述等信息
时经常用SQL Server2000自带的导出数据向导将数据从一台数据库服务器导出到另一台数据库服务器: 结果数据导出了,但表的主键、字段默认值、描述等信息却未能导出,一直没想出什么方法
阿炬
2018/05/11
1.2K0
Laravel Validator 更新时验证记录唯一的小技巧
这样在新增的时候是没什么问题的,但是在更新的时候就出现了一个问题,就是当我们的title没有发生改变的时候,我们使用unique的时候,会将原来的记录行进行扫描,这样就会提示我们该标题已经存在。
魔王卷子
2019/05/30
1.6K0
更新数据时,MySQL的聚簇索引是如何变化的?
搜索一个主键id对应的行,先去顶层的索引页88里通过二分查找,定位到你应该去下层哪个索引页里继续找。
JavaEdge
2022/02/20
1.7K0
更新数据时,MySQL的聚簇索引是如何变化的?
CentOS 使用 yum update 更新时保留特定版本的软件
有时需要保留特定版本的软件不升级,但升级其他软件,这时就需求用到下面的技巧。当CentOS/RHEL/Fedora下的Linux服务器使用 yum update 时命令如何排除选定的包呢?
用户1685462
2021/08/31
1.5K0
函数默认值
面试中可能会问到下面问题 function say(a = 1) { console.log(a); } say(null); say(undefined); say(); say(0); console.log(say.length); // say.length表示函数形参个数 关于答案,我先卖个关子,相信你看了下面的解析就会被安排的明明白白。 基本用法 1个参数有默认值 // ES6代码 function say(a = 1) { console.log(a); } // 转为ES5代码 f
grain先森
2019/08/23
1.5K0
点击加载更多

相似问题

更新时Kartik Depdrop Widget的默认值?

20

嵌套默认值-更新值时出错

12

MySQL:更新时设置为默认值

20

防止在更新时使用默认值

11

重复键更新时的MySQL默认值错误

26
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文