Html 带有水平子菜单的CSS下拉菜单
我有下面的网站,我试图实现一个水平css下拉菜单,它有一个子菜单,也是水平的。我尝试了所有方法,但似乎都无法使子菜单项彼此对齐。我所能做的就是让它们彼此重叠,变得难看/不可读。您的问题是,您将子菜单完全放置在父菜单上。但是父li的宽度很小 解决方案是将子菜单绝对放置在菜单包装器上 请使用链接查看此链接 更新您的CSS: 并删除此CSS: 注: 您可以查看源代码并检查CSS: 在更新的地方,一些定义被更改了! 当它读到updated,deleted时,声明被删除。Html 带有水平子菜单的CSS下拉菜单,html,css,drop-down-menu,Html,Css,Drop Down Menu,我有下面的网站,我试图实现一个水平css下拉菜单,它有一个子菜单,也是水平的。我尝试了所有方法,但似乎都无法使子菜单项彼此对齐。我所能做的就是让它们彼此重叠,变得难看/不可读。您的问题是,您将子菜单完全放置在父菜单上。但是父li的宽度很小 解决方案是将子菜单绝对放置在菜单包装器上 请使用链接查看此链接 更新您的CSS: 并删除此CSS: 注: 您可以查看源代码并检查CSS: 在更新的地方,一些定义被更改了! 当它读到updated,deleted时,声明被删除。 您的问题是,您正在将子菜单绝对定
您的问题是,您正在将子菜单绝对定位到父li。但是父li的宽度很小 解决方案是将子菜单绝对放置在菜单包装器上 请使用链接查看此链接 更新您的CSS: 并删除此CSS: 注: 您可以查看源代码并检查CSS: 在更新的地方,一些定义被更改了! 当它读到updated,deleted时,声明被删除。
我看了一下你的页面,你的子菜单垂直的原因是子菜单太窄了:它的宽度和封闭的一样。您应该在其上设置宽度,以使其占用所有可用空间 使其与父元素左对齐,与菜单栏右端右对齐是很棘手的。您可能只想将其设置为足够宽的范围,以容纳您知道的所有内容,并假设不会有任何回流
您还可以使用一些JavaScript来计算它的正确位置。JQuery在这方面很好。作为$document.ready的一部分,您只需在首次加载页面时设置一次即可。我查看了您的页面,您的子菜单垂直的原因是子菜单太窄:其宽度与封闭的宽度相同。您应该在其上设置宽度,以使其占用所有可用空间 使其与父元素左对齐,与菜单栏右端右对齐是很棘手的。您可能只想将其设置为足够宽的范围,以容纳您知道的所有内容,并假设不会有任何回流
您还可以使用一些JavaScript来计算它的正确位置。JQuery在这方面很好。作为$document.ready的一部分,您只需在首次加载页面时设置一次即可。对第二级子菜单进行一些调整:
/* Menu */
#menu { /* UPDATED */
width: 820px;
height: 60px;
margin: 0 auto;
padding: 0px 40px;
position: relative;
}
#menu ul {
margin: 0;
padding: 0px 0px 0px 0px;
line-height: normal;
line-style: none;
list-style-type: none;
}
#menu a {
display: block;
height: 20px;
margin-right: 1px;
padding: 10px 20px 0px 20px;
/* height: 40px;
margin-right: 1px;
padding: 20px 20px 0px 20px;*/
text-decoration: none;
text-transform: uppercase;
font-family: 'Abel', sans-serif;
font-size: 16px;
font-weight: normal;
color: #FFFFFF;
border: none;
}
#menu a:hover {
background: url(images/page-content-bg.png) repeat;
}
#menu ul ul a:hover {
background: url(images/page-menu-bg.png) repeat;
}
#menu .current_page_item a {
background: url(images/page-content-bg.png) repeat;
}
#menu li { /* UPDATED */
float: left;
}
/* UPDATED, REMOVED
#menu ul li ul li #jackie_spencer{
display: inline;
position: absolute;
top: 20px;
left: 0;
width: 100px;
color: #FFF;
}
*/
#menu ul ul { /* UPDATED */
list-style-type: none;
position: absolute;
z-index: 500;
left: 50px;
right: 0;
}
#menu ul ul ul {
position: absolute;
/* top: 0;
left: 100%;*/
z-index: 500;
left: 50px;
right: 0;
}
div#menu ul ul,
div#menu ul li:hover ul ul,
div#menu ul ul li:hover ul ul
{display: none;}
div#menu ul li:hover ul,
div#menu ul ul li:hover ul,
div#menu ul ul ul li:hover ul
{display: block;}
div#menu ul ul li:hover { background:#c0c0c0;}
div#menu ul ul li { background:#cccccc;}
div#menu ul ul li a:hover { color:#000;}
页面代码
<div id="menu">
<ul>
<li class="current_page_item"><a id="home_menu" href="#Home">Home</a><ul>
<li><a href="#">linkx</a></li>
<li><a href="#">linkx</a></li>
<li><a href="#">linkx</a></li>
<li><a href="#">linkx</a></li>
<li><a href="#">linkx</a></li>
<li><a href="#">linkx</a>
<ul>
<li><a href="#">linky</a></li>
<li><a href="#">linky</a></li>
<li><a href="#">linky</a></li>
<li><a href="#">linky</a></li>
<li><a href="#">linky</a></li>
<li><a href="#">linky</a></li>
</ul>
</li>
</ul></li>
<li><a id="aboutus_menu" href="#About_Us">About Us</a><ul>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
</ul></li>
</ul>
<ul>
<li><a id="what_we_do" href="#What_We_Do">What We Do</a>
<ul>
<li><a id="jackie_spencer" href="#Jackie_Spencer">Hypnotherapy</a></li>
<li><a id="diana_menz" href="#Diana_Menz">Massage</a></li>
<li><a id="afton_land" href="#Jackie_Spencer">Estitician</a></li>
</ul>
</li>
</ul>
<ul>
<li><a id="contactus_menu" href="#Contact_Us">Contact Us</a><ul>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
</ul></li>
</ul>
</div>
提供第二级子菜单的一些调整:
/* Menu */
#menu { /* UPDATED */
width: 820px;
height: 60px;
margin: 0 auto;
padding: 0px 40px;
position: relative;
}
#menu ul {
margin: 0;
padding: 0px 0px 0px 0px;
line-height: normal;
line-style: none;
list-style-type: none;
}
#menu a {
display: block;
height: 20px;
margin-right: 1px;
padding: 10px 20px 0px 20px;
/* height: 40px;
margin-right: 1px;
padding: 20px 20px 0px 20px;*/
text-decoration: none;
text-transform: uppercase;
font-family: 'Abel', sans-serif;
font-size: 16px;
font-weight: normal;
color: #FFFFFF;
border: none;
}
#menu a:hover {
background: url(images/page-content-bg.png) repeat;
}
#menu ul ul a:hover {
background: url(images/page-menu-bg.png) repeat;
}
#menu .current_page_item a {
background: url(images/page-content-bg.png) repeat;
}
#menu li { /* UPDATED */
float: left;
}
/* UPDATED, REMOVED
#menu ul li ul li #jackie_spencer{
display: inline;
position: absolute;
top: 20px;
left: 0;
width: 100px;
color: #FFF;
}
*/
#menu ul ul { /* UPDATED */
list-style-type: none;
position: absolute;
z-index: 500;
left: 50px;
right: 0;
}
#menu ul ul ul {
position: absolute;
/* top: 0;
left: 100%;*/
z-index: 500;
left: 50px;
right: 0;
}
div#menu ul ul,
div#menu ul li:hover ul ul,
div#menu ul ul li:hover ul ul
{display: none;}
div#menu ul li:hover ul,
div#menu ul ul li:hover ul,
div#menu ul ul ul li:hover ul
{display: block;}
div#menu ul ul li:hover { background:#c0c0c0;}
div#menu ul ul li { background:#cccccc;}
div#menu ul ul li a:hover { color:#000;}
页面代码
<div id="menu">
<ul>
<li class="current_page_item"><a id="home_menu" href="#Home">Home</a><ul>
<li><a href="#">linkx</a></li>
<li><a href="#">linkx</a></li>
<li><a href="#">linkx</a></li>
<li><a href="#">linkx</a></li>
<li><a href="#">linkx</a></li>
<li><a href="#">linkx</a>
<ul>
<li><a href="#">linky</a></li>
<li><a href="#">linky</a></li>
<li><a href="#">linky</a></li>
<li><a href="#">linky</a></li>
<li><a href="#">linky</a></li>
<li><a href="#">linky</a></li>
</ul>
</li>
</ul></li>
<li><a id="aboutus_menu" href="#About_Us">About Us</a><ul>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
</ul></li>
</ul>
<ul>
<li><a id="what_we_do" href="#What_We_Do">What We Do</a>
<ul>
<li><a id="jackie_spencer" href="#Jackie_Spencer">Hypnotherapy</a></li>
<li><a id="diana_menz" href="#Diana_Menz">Massage</a></li>
<li><a id="afton_land" href="#Jackie_Spencer">Estitician</a></li>
</ul>
</li>
</ul>
<ul>
<li><a id="contactus_menu" href="#Contact_Us">Contact Us</a><ul>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
<li><a href="#">link</a></li>
</ul></li>
</ul>
</div>