gpt4 book ai didi

html - 两行 CSS 菜单展开不正确

转载 作者:行者123 更新时间:2023-11-28 17:07:53 25 4
gpt4 key购买 nike

我有一个两行的纯 CSS 菜单,只要您单击第一行的其中一个子菜单选项,该菜单就会扩展为三行。对于最左边和最右边的选项来说没问题,但中间的任何一个选项都完全搞砸了,并将其他所有内容移到另一行。

正确的行为: enter image description here

不正确的行为: enter image description here

这是 CSS:

#cssmenu ul {
margin: 0;
padding: 7px 6px 0;
background: #74c141 url(overlay.png) repeat-x 0 -110px;
line-height: 100%;
font-family: 'Oxygen', sans-serif;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
-webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
-moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}
#cssmenu li {
margin: 0 5px;
padding: 0 0 8px;
float: left;
position: relative;
list-style: none;
}
#cssmenu a,
#cssmenu a:link {
font-weight: bold;
font-size: 13px;
color: #e7e5e5;
text-decoration: none;
display: block;
padding: 8px 20px;
margin: 0;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
}
#cssmenu a:hover {
background: #000;
color: #fff;
}
#cssmenu .active a,
#cssmenu li:hover > a {
background: #90ce67 url(overlay.png) repeat-x 0 -40px;
color: #444;
border-top: solid 1px #f8f8f8;
}
#cssmenu ul ul li:hover a,
#cssmenu li:hover li a {
background: none;
border: none;
color: #666;
-webkit-box-shadow: none;
-moz-box-shadow: none;
}
#cssmenu ul ul a:hover {
background: #74c141 url(overlay.png) repeat-x 0 -100px !important;
color: #fff !important;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
}
#cssmenu li:hover > ul {
display: block;
}
#cssmenu ul ul {
z-index: 1000;
display: none;
margin: 0;
padding: 0;
width: 250px;
position: absolute;
top: 40px;
left: 0;
background: #ffffff url(overlay.png) repeat-x 0 0;
border: solid 1px #b4b4b4;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
}
#cssmenu ul ul li {
float: none;
margin: 0;
padding: 3px;
}
#cssmenu ul ul a,
#cssmenu ul ul a:link {
font-weight: normal;
font-size: 12px;
}
#cssmenu ul:after {
content: ".";
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}
* html #cssmenu ul {
height: 1%;
}

我显然希望菜单元素保持在原位,并且在鼠标悬停或单击时不会移动。感谢您的观看!!!

干杯,布莱恩

最佳答案

我相信这可能是因为您列表中的元素正在改变宽度。

请记住,以下属性会调整元素的总宽度:

  • 宽度
  • 填充
  • margin
  • 边框

属性必须是静态的。例如,我可以在以下选择器中看到,边框值从 1px 变为 0px(由于第二条规则中的无值)。

#cssmenu .active a,
#cssmenu li:hover > a {
background: #90ce67 url(overlay.png) repeat-x 0 -40px;
color: #444;
border-top: solid 1px #f8f8f8;
}
#cssmenu ul ul li:hover a,
#cssmenu li:hover li a {
background: none;
border: none; /* look at this maybe set it as 1px, with a transparent color value */
color: #666;
-webkit-box-shadow: none;
-moz-box-shadow: none;
}

如果你能把html也贴出来会很有帮助。

关于html - 两行 CSS 菜单展开不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29906051/

25 4 0