zoukankan      html  css  js  c++  java
  • css sprites之圆角

    第一步:创建我们的 Sprite
    用PS等工具合成如图所示的图片(以一个像素的红线来区分)

    第二部分:编写HTML代码

    首先,我们会给容器 div 一个 .roundedBox类 :

    <div class="roundedBox"></div>

    现在,我们必须再增加四个div ,这会在将来创建圆角的时候用到。之后必须给每个加载一个类 .corner,同时也标识一个类来指定它们格子的位置。 

    Code

    一切搞定? 嗯,让我们把注意力再转移到 CSS 代码上来。

    第三部:编写CSS样式

    绝对定位元素通常都依照相对定位的父元素进行定位。If this element is not defined, they will take as their parent relatively-positioned element, the body tag.如果这个父元素无法界定,那么它会去最近作相对定位的那个父元素,直至 body 标签。

    让我们先来定义下所有的圆角

    所有的圆角都必须定义绝对定位,并且注明高度跟宽度。 我的圆角定义的宽度跟高度都是 17px.

    .corner{position:absolute;width:17px;height:17px;}

     

    现在开始定义 div 容器样式:

    .roundedBox {position:relative;}

    任何定义有类 .roundedBox 的元素内,绝对定位元素都会相对于这个元素进行定位,而不是标签 body。 我们也必须设置一些padding值,如果没有设置,圆角将会覆盖我们的文本,这肯定不是我们想要的效果。 重要提示: top 和 bottom padding 值必须 等价于圆角的 height。left 和 right padding 值必须等价于圆角的宽度。 正如您已经知道的,我的圆角宽度跟高度是相等的,因此,四个边角的padding 值也是相等的:

    .roundedBox {position:relative; padding:17px; margin:10px 0;}

    让我们对没有圆角作单独定义

    我们会对每个圆角作绝对定位设置,并且定位背景图的位置 (根据我们的 sprite):

    Code


    最后,给 #type1 匹配一个背景色,使之融合于 sprite 中的圆角:

    #type1 {background-color:#CCDEDE;}
    #type1 .corner 
    {background-image:url(../image/corners.gif);}

    全部的代码:

    Code
  • 相关阅读:
    Fix Installing .NET Framework 3.5 failed Error Code 0x800F0954 on Windows 10
    RHEL8安装五笔输入法
    Enable EPEL and Local Repository on RHEL8
    Why is Yum Replaced by DNF?
    检查Linux服务器是否被攻击的常用命令及方法
    IDEA 主题
    IDEA 如何显示一个类中所有的方法
    Appium 安装以及安装过程中遇到的问题
    Maven 如何发布 jar 包到 Nexus 私库
    java泛型的基本使用
  • 原文地址:https://www.cnblogs.com/Fskjb/p/1531041.html
Copyright © 2011-2022 走看看