【问题标题】:unable to design vertical menu with image无法用图像设计垂直菜单
【发布时间】:2014-03-21 21:51:55
【问题描述】:

我正在处理我的大学项目,为此我必须在我的项目中添加垂直菜单栏。我在 Google 上搜索了很多,但找不到用于创建带有图像的垂直菜单的代码。你能告诉我如何创建这种类型的菜单吗?

我想像这样创建我的菜单:

我正在尝试这样,但文本被放置在底部。我想要它在中间。

<ul class="menu"> 
            <li>
                <a href="#"><p><img src="images/sys.png" width="30" height="30">Home</p></a>
            </li>
        </ul>

【问题讨论】:

    标签: jquery html css menu


    【解决方案1】:

    基本思想是您可以使用 display: inline-block 和 vertical-align: middle 垂直对齐文本和图像。

    <ul class="nav">
        <li class="roadster"><a href="#"><span class="brand">Roadster</span><span class="image"><img src="http://png-3.findicons.com/files/icons/1012/racing_cars/128/mitsubishi_lancer.png" alt=""></span></a></li>
        <li class="roadster"><a href="#"><span class="brand">Roadster</span><span class="image"><img src="http://png-3.findicons.com/files/icons/1012/racing_cars/128/mitsubishi_lancer.png" alt=""></span></a></li>
    </ul>
    

    http://jsfiddle.net/YVp8E/11/
    http://jsfiddle.net/YVp8E/11/show

    .nav {
       width: 25em;
    }
    .nav li {
      display: block; 
    }
    .nav li a {
        color: #686868;
        display: block;
        padding: 10px 0;
    }
    .nav li {
        background: url(https://cdn2.iconfinder.com/data/icons/ios-7-icons/50/forward-128.png) no-repeat 100% 50%;
    
    }
    .nav li {
        border-top: 1px solid #ccc; 
    }
    .nav li:first-child {
        border-top: none; 
    }
    .nav span {
      display: inline-block;
      vertical-align: middle; 
    }
    .nav .image {
      padding-left: 60px;
    }
    

    【讨论】:

      【解决方案2】:

      你可以使用:after伪元素来实现欲望的效果。检查Demo

      <ul class="menu"> 
        <li><a href="#">Boxter</a></li>
        <li><a href="#">Cayman</a></li>
        <li><a href="#">911</a></li>
      </ul>
      

      /--这里是CSS----*/

      ul{margin:0; padding:0; list-style-type:none;}
      li a
      {
        display:block;
        border-bottom:1px solid grey;
        padding:25px 0;
      
      }
      li{ position:relative;}
      
      li a:after
      {
        content:">";
        position:absolute;
        right:20px;
        top:30px;
        vertical-align:middle;
      }
      li:nth-child(1):after
      {
      content:" ";
      position:absolute;
      right:50px;
      top:0; 
      background:url("http://lorempixel.com/70/70") 0 20px no-repeat;
      width:70px;
      height:70px;
      vertical-align:middle;
      }
      li:nth-child(2):after
      {
      content:" ";
      position:absolute;
      right:50px;
      top:0; 
      background:url("http://placehold.it/70x70") 5px 20px no-repeat;
      width:70px;
      height:70px;
      vertical-align:middle;
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-09-05
        • 1970-01-01
        • 2021-06-28
        • 2020-01-31
        • 2021-05-14
        • 1970-01-01
        • 1970-01-01
        • 2016-08-06
        相关资源
        最近更新 更多