2014-07-18 47 views
3

我正在尝试完成下面的左侧窗口小部件框,并且您可以看到,有一个对角线性渐变,以及从上到下的光泽。我在CSS中创建的是在右边,而我试图完成的是在左边。有没有一种方法可以只使用一个背景属性来完成此操作?或者我需要围绕整个div与另一个div,所以我可以覆盖一个半透明的渐变呢?由于如何添加多个线性渐变到CSS背景?如果

enter image description here

与代码更新:

.drk-grad { 
    background: linear-gradient(to bottom, #d2d2d2 7%, #b1b1b1 100%); 
    -webkit-border-radius: 10px; 
    border-radius: 10px; 
    background-clip: padding-box; 
    -webkit-box-shadow: 0px 1px 3px 1px #969494; 
    box-shadow: 0px 1px 3px 1px #969494; 
    border-top: 1px solid rgba(255, 255, 255, 0.7); 
    border-left: 1px solid rgba(255, 255, 255, 0.3); 
} 

SOLUTION:

background: repeating-linear-gradient(rgba(255,255,255,.5) -1%, rgba(107, 107, 107, 0.1), repeating-linear-gradient(135deg, #b6b6b6, #B6B6B6 10px, #b2b2b2 10px, #b2b2b2 20px); 

回答

1

一般来说,你可以添加多个背景,以逗号分隔。列出的第一个出现在顶部。

http://css-tricks.com/stacking-order-of-multiple-backgrounds/

http://lea.verou.me/css3patterns/

这是一个基本的轮廓。为您正好想要的效果的数字播放:

DEMO - http://jsbin.com/tamav/1

.drk-grad { 

    background: 

    linear-gradient(to top, transparent, #b1b1b1 100%), 

    gray repeating-linear-gradient(45deg, transparent, transparent 35px, 

    rgba(255, 255, 255, 0.5) 35px, rgba(255, 255, 255, 0.5) 70px); 

    -webkit-border-radius: 10px; 
    border-radius: 10px; 
    background-clip: padding-box; 
    -webkit-box-shadow: 0px 1px 3px 1px #969494; 
    box-shadow: 0px 1px 3px 1px #969494; 
    border-top: 1px solid rgba(255, 255, 255, 0.7); 
    border-left: 1px solid rgba(255, 255, 255, 0.3); 

} 
+0

感谢您的快速反应...更新的代码 – courtyen

+1

感谢您将您的代码!我已经创建了以上概念的基本演示。 – jtheletter