zoukankan      html  css  js  c++  java
  • CSS图片圆角框的灵活处理

     

    3.2.1  固定宽度的圆角框

    最容易创建的是固定宽度的圆角框。它们只需要两个图像:一个图像用于框的顶部,另一个用于底部。例如,假设希望创建图3-3这样的框样式。

    3-3  简单的圆角框样式

    这个框的标记如下:

    需要用图形软件创建两个图3-4这样的图像:一个图像用于框的顶部,另一个用于底部。这个示例以及本书中其他所有示例的代码和图像可以从www.friendsofed.com下载。

    3-4  顶部和底部曲线图像

    然后,将顶部图像应用于标题元素,将底部图像应用于div框的底部。因为这个框样式是单色的,所以可以在div框上添加背景颜色,从而形成框的主体。

    我们不希望内容碰到框的边界,所以还需要在div中的元素上添加一些填充:

    这个方法对于单色而且没有边框的简单框是有效的。但是,如果希望创建像图3-5这样更生动的样式,那么怎么办?

    3-5  样式更特殊的圆角框

    实际上,可以使用相同的方式,但是这一次不在框上设置背景颜色,而是设置一个重复显示的背景图像。还需要将底部曲线图像应用到另一个元素上。在这个示例中,我使用框中的最后一个段落元素:

    3-6所示为生成的框。因为没有给这个框设置高度,所以它会随着文本尺寸的增加进行垂直扩展。

    3-6  样式特殊的固定宽度框。框的高度会随着文本尺寸的增加而扩展

    灵活的圆角框

    如果加大字号,前面的示例都会垂直扩展。但是,它们不会水平扩展,因为框的宽度必须与顶部和底部图像的宽度一致。如果希望创建灵活的框,那么需要采用略有不同的方法。不用单一图像组成顶部和底部曲线,而是用两个相互重叠的图像(见图3-7)。

    3-7  如何扩展顶部图像来形成灵活的圆角框

    随着框尺寸的增加,大图像有更多的部分显露出来,这样就实现了框扩展的效果。这个方法有时候被称为滑动门技术sliding doors technique),因为一个图像在另一个图像上滑动,将它的一部分隐藏起来。这个方法需要更多的图像,所以必须在标记中添加两个额外的无语义元素。

    这个方法需要四个图像:两个顶部图像组成顶部曲线,两个底部图像组成底部曲线和框的主体(见图3-8)。因此,底部图像的高度必须与框的最大高度相同。分别将这些图像命名为top-left.giftop-right.gifbottom-left.gifbottom-right.gif

    3-8  创建灵活的圆角框所需的图像

    首先,将bottom-left.gif应用于主框div,将bottom-right.gif应用于外边的div。接下来,将top-left.gif应用于内部的div,将top-right.gif应用于标题。最后,添加一些填充以便在内容周围形成一点儿空白。

    在这个示例中,我以em为单位设置框的宽度,所以在浏览器中增加文本尺寸时框会伸展(见图3-9)。当然,可以用百分数设置宽度,这使框根据浏览器窗口的尺寸进行扩展或收缩。这是弹性和灵活布局背后的主要原则之一,在本书后面会进一步讨论这些原则。

    3-9  灵活的圆角框会随着文本尺寸的增加进行水平和垂直扩展

     

  • 相关阅读:
    LINQ语句中的.AsEnumerable() 和 .AsQueryable()的区别
    Linq扩展方法之All 、Any
    Linq扩展方法之Aggregate 对序列应用累加器函数
    C#开发的进化史
    C#选择文件、选择文件夹、打开文件(或者文件夹)
    XPath操作XML文档
    文档对象模型操作xml文档
    XML简介
    php获取某经纬度附近地点位置
    Yii中实例化类的四种方式
  • 原文地址:https://www.cnblogs.com/wq3if2in/p/1326972.html
Copyright © 2011-2022 走看看