【问题标题】:CSS how to make icons look like they are inside the backroundCSS如何使图标看起来像它们在背景中
【发布时间】:2014-02-12 12:02:05
【问题描述】:

我不知道如何解释这一点,如果这是一个设计问题,请纠正我。看看下面的facebook header.

那个朋友请求的图标和排序看起来像是在后台,我如何用 css 做到这一点?

【问题讨论】:

    标签: html css icons photoshop


    【解决方案1】:

    你可以做这样的事情(只是把它搅起来,所以它并不完美)。

    我使用了您提供的 Facebook 图片中的颜色。

    这是我所做的:

    HTML:

    <div id="container">
        <div id="inset"></div>
    </div>
    

    CSS:

    #container{
        height:200px;
        width:200px;
        background:#48639b;
    }
    
    #inset{
        background:#31497e;
        height:50px;
        width:50px;
        box-shadow:inset 0px 0px 5px #1f2f50;
    }
    

    JSFiddle -- 试一试

    JSFiddle -- 试试两个

    JSFiddle 作为一些额外的样式将#inset 更多地放入容器中,但它们不会影响插入的过度样式。

    【讨论】:

      【解决方案2】:

      您可以使用box-shadow 和 inset 来完成排序按钮样式,以获取按钮内部的阴影。以及用于圆角的 border-radius

      HTML

      <a href="#" class="button">button</a>
      

      CSS

      body { background:#4b669d; padding:40px; 
             font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;}
      
      a { 
          display:inline-block; 
          font-size:12px;
          padding:0 20px;
          margin:10px;
          height:30px; 
          background:#435c91; 
          border:1px solid #2a3349; 
          text-align:center;
          color:#fff;
          line-height:26px;
          text-decoration:none;
      
           border-radius:5px;
      
      /* this is the inner shadow and drop shadow */    
      -webkit-box-shadow:inset 0 0 3px 2px rgba(0,0,0,0.15), 1px 1px 0px 1px rgba(255,255,255,0.3);
      box-shadow:inset 0 0 3px 2px rgba(0,0,0,0.15), 1px 1px 1px 0px rgba(255,255,255,0.3);
      
      /* gradient - from http://www.colorzilla.com/gradient-editor/ */
      background: rgb(93,114,163); /* Old browsers */
      background: -moz-linear-gradient(top, rgba(93,114,163,1) 0%, rgba(46,72,128,1) 100%); /* FF3.6+ */
      background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(93,114,163,1)), color-stop(100%,rgba(46,72,128,1))); /* Chrome,Safari4+ */
      background: -webkit-linear-gradient(top, rgba(93,114,163,1) 0%,rgba(46,72,128,1) 100%); /* Chrome10+,Safari5.1+ */
      background: -o-linear-gradient(top, rgba(93,114,163,1) 0%,rgba(46,72,128,1) 100%); /* Opera 11.10+ */
      background: -ms-linear-gradient(top, rgba(93,114,163,1) 0%,rgba(46,72,128,1) 100%); /* IE10+ */
      background: linear-gradient(to bottom, rgba(93,114,163,1) 0%,rgba(46,72,128,1) 100%); /* W3C */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5d72a3', endColorstr='#2e4880',GradientType=0 ); /* IE6-9 */
      }
      

      显然它需要更多的调整,但希望这应该是一个起点。

      JSFiddle Demo 2 - 现在还有渐变背景和阴影。

      http://jsfiddle.net/53fWz/6/

      【讨论】:

        【解决方案3】:

        使用多个盒子阴影来产生浮雕效果。

        box-shadow:inset 0 1px 1px rgba(0,0,0,0.7), 0 1px 0 rgba(255,255,255,0.3);
        

        http://jsfiddle.net/Em97N/2/

        【讨论】:

          【解决方案4】:

          您应该为图像着色,使用比前景更暗的颜色。简单的设计。也许在它周围添加一个黑色边框。

          【讨论】:

            猜你喜欢
            • 2019-12-01
            • 2011-02-23
            • 1970-01-01
            • 1970-01-01
            • 2023-04-03
            • 1970-01-01
            • 1970-01-01
            • 2014-03-05
            • 1970-01-01
            相关资源
            最近更新 更多