首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用html/css制作简单的地铁风格菜单

用html/css制作简单的地铁风格菜单
EN

Stack Overflow用户
提问于 2015-01-13 07:41:24
回答 2查看 1.3K关注 0票数 0

首先,我试着用谷歌搜索了几天,我刚刚开始学习html/css,我的技能从1到100大概是6,这是最大的。我有这个代码,作为博客网页小工具的工作,但我希望它是有点不同。代码如下:

代码语言:javascript
复制
:root .css3-metro-dropdown option,
:root .css3-metro-dropdown:after,
:root .css3-metro-dropdown::after,
:root .css3-metro-dropdown select
{
color: #fff;
}

:root .css3-metro-dropdown select,
:root .css3-metro-dropdown:after,
:root .css3-metro-dropdown::after
{
display: block;
background: #2b5797;
}

:root .css3-metro-dropdown select,
:root .css3-metro-dropdown option
{
padding: 8px;
}

:root .css3-metro-dropdown
{
position: relative;
display: inline-block;
border: 0;
}

:root .css3-metro-dropdown::after
{
content: "\25bc";
position: absolute;
top: 0;
right: 0;
display: block;
width: 32px;
font-size: 15px;
line-height: 34px;
text-align: center;

-webkit-pointer-events: none;
-moz-pointer-events: none;
pointer-events: none;
}

:root .css3-metro-dropdown select
{
height: 34px;
border: 0;
vertical-align: middle;
font: normal 12px/14px "Segoe UI", Arial, Helvetica, Sans-serif;
outline: 0 none;
}

:root .css3-metro-dropdown option
{
background: #fff;
color: #333;
}

<span class="css3-metro-dropdown">
<select name="dropdown-1">
    <option value="0">Client-side Languages</option>
    <option value="1">JavaScript</option>       
    <option value="2">CSS3</option>
    <option value="3">HTML5</option>
</select>
</span>
<span class="css3-metro-dropdown css3-metro-dropdown-color-ff1d77">
<select name="dropdown-2">
    <option value="0">Server-side Languages</option>
    <option value="1">PHP</option>       
    <option value="2">JAVA</option>
    <option value="3">ASP.NET</option>
    <option value="4">Perl</option>
</select>
</span>
<span class="css3-metro-dropdown css3-metro-dropdown-color-2673ec">
<select name="dropdown-3">
    <option value="0">JavaScript Libraries</option>
    <option value="1">jQuery</option>       
    <option value="2">Y!UI</option>
    <option value="3">ASP.NET AJAX</option>
    <option value="4">CoffeeScript</option>
</select>
</span>
<span class="css3-metro-dropdown css3-metro-dropdown-color-ff2e12">
<select name="dropdown-4">
    <option value="0">Guitars</option>
    <option value="1">B.C. Rich</option>       
    <option value="2">ESP</option>
    <option value="3">Ibanez</option>
    <option value="4">Jackson</option>
</select>
</span>  

我想要看起来像这样的www.metrominimalist.blogspot.com

EN

回答 2

Stack Overflow用户

发布于 2015-01-13 08:05:03

您应该尝试使用<nav><ul><li>,而不是使用<select><option>,请参见示例http://line25.com/tutorials/how-to-create-a-pure-css-dropdown-menu

票数 0
EN

Stack Overflow用户

发布于 2015-01-13 08:33:46

我建议使用无序列表(UL) instead.So而不是select,而不是使用带有选项的select标记,您会得到如下所示:

代码语言:javascript
复制
<ul class="primary-nav">
 <li>Client-side Languages
  <ul class="primary-nav__subnav">
   <li>JavaScript</li> 
   <li> CSS </li>
   <li> HTML </li>
  </ul>
 </li>
 <li> Server Side Languages
  <ul>
   <li> 1 </li>
   <li> 2 </li>
   <li> 3 </li>  
  </ul>
 </li>
 <li> JavaScript Languages </li>
</ul> 

诸若此类。对于CSS,您可以使用顶级菜单(primary-nav)上的display:inline-table,以便这些项彼此相邻显示,然后您可以使用伪类:hover切换每个子菜单的显示。确保在primary-nav UL上声明一个高度,否则当子菜单被切换时,它会扩展。

Here's一个快速工作示例

或者,您也可以使用javascript,但这应该可以。如果您不想在UL上设置高度,也可以使用其他方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27912690

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档