CSS的力量:用一个DIV画图


发布者 ourjs  发布时间 1409126067462
关键字 心得体会  展示 
这些图片都是用一个DIV绘制出来的,其实原理并不复杂。



这些图片都是由CSS绘制出来的,通过background-image叠加实现,

如蘑菇头的实现,通过 radial-gradient 径向渐变 , linear-gradient 线性渐变相互叠加实现,如:

div {
  width: 170px;
  height: 140px;
  background-image: 
        radial-gradient(circle at 50% 120%, rgba(0,0,0,0.7) 23%, rgba(0,0,0,0) 48%),
        linear-gradient(30deg, rgba(0,0,0,0.4) 10%, rgba(0,0,0,0) 20%),
        radial-gradient(circle at 50% 33%, #f8f6f7 32%, rgba(255,255,255,0) 32%),
        radial-gradient(circle at -13% 55%, #f8f6f7 20%, rgba(255,255,255,0) 20%),
        radial-gradient(circle at 113% 55%, #f8f6f7 20%, rgba(255,255,255,0) 20%),
        linear-gradient(to bottom, #ef0015 20%, #b2000c 100%);
        border-radius: 140px 140px 80px 80px;
}

在线演示:在此

同时有前后遮挡关系的通过:before和:after伪元素的background-image来实现。

PS: 此种手法对并不完全支持旧版IE




回复 (11)
  • #
  • #1 monkey 1409206279720

    牛X

  • #2 empty_sound 1409459595571

    此种手法对并不完全支持旧版IE

    不是“不完全支持”,而是完全不支持。

  • #3 ourjs 1409467556964

    @empty_sound #1

    IE9部分支持。

  • #4 文代召 1410822314551

    IE就是一个6毛

  • #5 cokyng 1420682050956

    @empty_sound #1

    IE9才能支持圆角。

  • #6 霍羽产 1454397644037

    其实不难

  • #7 霍羽产 1454397676807

    考验css功底的时候到了

  • #8 霍羽产 1454397960704

    @empty_sound #1 border-radius的属性只有css3,而ie低版本没有写入css3的机制,识别不了

  • #9 辛让友 1455858579652

  • #10 陈仿允 1462870694770

    CSS3可以话出IE8的图标,可是IE8却不支持CSS3。可悲

  • #11 费双乃 1471498762352

    111

微信扫码 立即评论