【发布时间】:2013-08-22 20:21:31
【问题描述】:
我一直在尝试使用 CSS 为我的 wordpress 主题设计一个下拉菜单,如下所示。
我已经创建了下拉菜单,但我不知道如何使用 CSS 创建曲线并使背景颜色看起来像上图一样透明。
为了让它看起来透明,我尝试了opacity:0.4; filter:alpha(opacity=40);,但它看起来不在上面的下拉菜单附近。
能否请您告诉我如何使我的下拉菜单看起来像图片中的下拉菜单并使其也具有响应性?
谢谢
这是我的代码:
你也可以在这里查看我的代码http://jsfiddle.net/MdpPd/
HTML
<nav>
<ul id="menu">
<li><a href="">Homepage</a></li>
<li><a href="">Google</a>
<ul class="sub-menu">
<li><a href="">About Us</a></li>
<li><a href="">Programs</a></li>
</ul>
</li>
</ul>
</nav>
CSS
#menu {
display: block;
float: left;
margin: 0 auto 0;
width: 100%;
}
#menu ul {
list-style: none;
margin: 0;
padding-left: 0;
position: absolute;
background: #108BB6;
}
#menu li {
float: left;
position: relative;
list-style-type: none;
}
#menu a {
display: block;
line-height: 2.4em;
padding: 0 13px;
text-decoration: none;
}
#menu ul li {
display:block;
clear: both;
width: 265px;
}
#menu ul li:hover {
display: inline-block;
}
#menu li:not(:hover) ul {
display: none;
}
#menu ul ul {
box-shadow: 0 3px 3px rgba(0,0,0,0.2);
-moz-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
-webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
display: none;
float: left;
position: absolute;
top: 2em;
left: 0;
z-index: 99999;
}
#menu ul ul ul {
left: 100%;
top: 0;
}
#menu ul ul a {
background: #dedede;
line-height: 1em;
padding: .5em .5em .5em 1em;
width: 10em;
height: auto;
}
#menu a:link {color:black;}
#menu a:visited {color:black;}
#menu a:focus {color:black; background: #ebdb00;}
#menu a:hover {color:white; background: #0C6481;}
#menu a:active {color:black; background: #ebdb00;}
【问题讨论】:
-
你的问题太宽泛了。一般来说,你应该看看CSS shapes和RGBA colors
-
我正在考虑逐步偏移每个孩子,然后使用 CSS 边框来创建这些三角形......是的,你需要依靠 rgba() 背景颜色在背景中具有不透明度但不在内容中。
-
@Boaz 感谢您的回复。我之前访问了 css-tricks.com 并尝试了
Parallelogram代码,但结果很糟糕。你可以在这里看到它:jsfiddle.net/H8BLE :)
标签: css