• [转]详细解说:简单CSS3实现炫酷读者墙


    最近折腾css3,烦躁中翻到这么一文,又有动力了,日!

    以下全文↓

    如题,给大家介绍和讲解几个常用的CSS3属性,并用到实处。

    先看Demo(请使用Chrome或者Firefox浏览,IE的靠边):

    此Demo地址为:演示携程UED读者墙

    觉得爽的可以继续阅读下面的知识点,感觉不爽的可绕行。

    使用基础的Html和CSS写出雏形

    需要一提的是头像(img)的排版。给外面a标签padding-left:;,img自身float:left;margin-left:;,这种写法避免了不少因浮动产生的问题,且代码简明,推荐适当的使用此方法。

    下面是Demo代码:

    <ul class="readers-list">
        <li><a target="_blank" href="http://lilyxue.blogbus.com/"> <img src="http://ued.ctrip.com/blog/avatar/ default.jpg"><em>点头猪</em> <strong>+10</strong><br>lilyxue.blogbus.com/</a></li>
        <li><a target="_blank" href="http://www.daqianduan.com"> <img src="http://www.daqianduan.com/ wp-content/themes/d4/img/admin.jpg"><em>浩子</em> <strong>+2</strong><br>www.daqianduan.com</a></li>
    </ul>
    .readers-list{line-height:18px;text-align:left;overflow:hidden;_zoom:1}
    .readers-list li{width:200px;float:left;*margin-right:-1px}
    .readers-list a,.readers-list a:hover strong{background-color:#f2f2f2;background-image:-webkit-linear-gradient(#f8f8f8,#f2f2f2);background-image:-moz-linear-gradient(#f8f8f8,#f2f2f2);background-image:linear-gradient(#f8f8f8,#f2f2f2)}
    .readers-list a{position:relative;display:block;height:36px;margin:4px;padding:4px 4px 4px 44px;color:#999;overflow:hidden;border:#ccc 1px solid;border-radius:2px;box-shadow:#eee 0 0 2px}
    .readers-list img,.readers-list em,.readers-list strong{-webkit-transition:all .2s ease-out;-moz-transition:all .2s ease-out;transition:all .2s ease-out}
    .readers-list img{width:36px;height:36px;float:left;margin:0 8px 0 -40px;border-radius:2px}
    .readers-list em{color:#666;font-style:normal;margin-right:10px}
    .readers-list strong{color:#ddd;width:40px;text-align:right;position:absolute;right:6px;top:4px;font:bold 14px/16px microsoft yahei}
    .readers-list a:hover{border-color:#bbb;box-shadow:#ccc 0 0 2px;background-color:#fff;background-image:none}
    .readers-list a:hover img{opacity:.6;margin-left:0}
    .readers-list a:hover em{color:#EE8B17;font:bold 12px/36px microsoft yahei}
    .readers-list a:hover strong{color:#EE8B17;right:150px;top:0;text-align:center;border-right:#ccc 1px solid;height:44px;line-height:40px}

    使用并解说所用CSS3

    接下来给大家说说这个读者墙所应用到的css3属性,及其具体的使用方法,老鸟可以飞了。

    渐变:

    background-image:-webkit-linear-gradient(#aaa,#bbb); 这是最简单的线性渐变,所以写起来也比较爽。

    渐变方式:由上至下渐变,#aaa开始,#bbb结束

    兼容浏览器的写法:-webkit-linear-gradient,-moz-linear-gradient,-o-linear-gradient,linear-gradient

    圆角:

    border-radius:2px; 不多说,2像素弧度的圆角,对背景、边框、图片都适用。

    不要小看这简单的代码,可以当圆规使:

    • 圆角矩形;
    • 椭圆;
    • 圆;
    • 可选择性圆角,border-radius:2px 0 0 2px;

    圆角方式:border-radius: a b c d; 顺序是:a=上左、b=上右、c=下右、d=下左;

    具体怎么个圆法,靠你练习了,这绝对是CSS3中最最常用到的一个属性;

    阴影:

    box-shadow:len1 len2 len3 len4 color (inset); 详解如下:

    • len1:第1个长度值用来设置对象的阴影水平偏移值。可为负值;
    • len2:第2个长度值用来设置对象的阴影垂直偏移值。可为负值;
    • len3:如果提供了第3个长度值则用来设置对象的阴影模糊值。不允许负值;
    • len4:如果提供了第4个长度值则用来设置对象的阴影外延值。不允许负值;
    • color:设置对象的阴影的颜色。
    • inset:设置对象的阴影类型为内阴影。不设置时,则对象的阴影类型为外阴影

    高级用法:box-shadow:len1 len2 len3 len4 color (inset) , len5 len6 len7 color ;  属性后可以跟多个阴影配置,用逗号隔开。

    box-shadow的实际应用相当广泛,不仅可设置对象阴影,还可描边、内发光等等,一般是作为立体效果的按钮。

    和box-shadow类似的css3属性text-shadow,设置文本阴影。

    变换:

    transition:property duration timing-function; 这是定义动画的变换方式,也是css3动画的核心。

    property 可以是:

    • all – 表示对象内所有元素执行变换;
    • none – 表示不执行变换;

    duration 是设置整个变换所用的时间,格式:.2s 或 2s ;

    timing-function 是设置变换效果,可以是后面的任意一个:ease, linear, ease-in, ease-out, ease-in-out, cubic-bezier(x1, y1, x2, y2),默认值时easy;各个值的效果不同,各式各样的变换效果可以满足部分体验的需求。

    兼容浏览器的写法:-webkit-transition,-moz-transition,-o-transition,transition

    结语

    css3确实很强大,但不要泛滥使用,恰到好处的使用css3会给交互带来很好的体验。

    So,更多的了解和学习css3的各个属性的使用方法是必须的,尤其是用在移动开发上。

    本文作者:浩子 转载请注明来自:携程UED

  • 相关阅读:
    android学习之4种点击事件的响应方式
    python Eve RESTFul 尝试笔记
    完成端口学习笔记(一):完成端口+控制台 实现文件拷贝
    POJ3080:Blue Jeans
    如何让ros支持C++11标准
    ros卸载
    文件读写
    sys.exit()主动结束程序
    python函数查询、数学和比较操作符、二元操作符
    labellmg使用方法
  • 原文地址:https://www.cnblogs.com/jaenlee/p/2270876.html
Copyright © 2020-2023  润新知