美文网首页
background系列属性

background系列属性

作者: EWL | 来源:发表于2018-07-15 22:48 被阅读0次

    background系列属性

    background是一个简写属性,其属性值可以包括
    backgrund-color
    background-image
    background-position/background-size
    background-size
    background-origin
    background-attachment

    background属性学习

    • background-color

    用于表示元素的背景颜色,取值可以是十六进制色号也可以是rgba,或者是hsl。

    • background-image

    用于表示元素的背景图片,与上述的background-color互不冲突,取值为图片所在路径。

    • background-position

    用于表示背景图片的位置,它的取值有两项:x与y,x表示距离左侧边界的长度,y表示距离顶部边界的长度。

    取值举例

    描述
    x(px)y(px) 第一个值代表水平,第二个值代表垂直。单位可以是例子中的像素px,也可以是别的一些常见的css单位,比如em。而当只取一个值的时候,那么第一个值就是所取值,第二个值默认为50%
    x% y% 两个值的含义同上,当图片位置在左上角的时候就是0% 0%,当为右下角时就是100% 100%,同样,如果只设置了一个值,那么就默认第二个值为50%
    left top, left bottom, left center, right top, right bottom, right center, center top, center bottom, center bottom 仅指定一个关键字,其他值将会是"center"
    • background-size

    用于表示背景图片的大小,取值可以为百分比/数字/contain/cover。

    其他两项取值都很好理解,对于contain和cover做了演示和学习,如下。

    当取值为contain的时候

    image.png

    很明显,contain指的是,在适应元素大小的情况下,将整个图片全部显示出来

    当取值为cover的时候

    image.png

    cover则是在保持原来图片纵横比的情况下,将整个元素覆盖,不留空隙。(所以明显图片没有被拉扯失真)

    • background-origin

    用于表示图片在元素中所处的位置,取值可以为padding-box/border-box/content/box

    取值为content-box的时候

    image.png

    取值为padding-box的时候

    image.png

    取值为border-box的时候

    image.png

    以上是在border为透明的时候作出的尝试,如果border有自己的颜色比如下图,就会出现背景图片边缘被遮盖的情况,虽然这个时候看起来不像是图片已经覆盖到border的样子,但它实际上已经在border上了,只是因为border原本层级高于背景,所以会被遮挡。

    image.png
    • background-attachment

    用于表示背景图片是否随着元素的上下滚动而滚动,取值有fixed/scroll/inherit。

    scroll

    image.png

    fixed

    image.png

    且上述操作都是在图片可重复的情况下进行的,如果图片不可重复就会出现在取值scroll的时候图片会因为滚动而消失在视野里,而fixed则不会,尤其在有文本对照的时候最为明显。

    html,body {
       width: 100%;
       height: 100%;
       margin: 0;
       background: #000;
    }
    .color-con {
       width: 50%;
       height: 50%;
       margin: 20px;
       padding: 20px;
       /*background: url("./imgs/img01.jpg");*/
       background-color: #666;
       background-image: url('./imgs/img01.jpg');
       background-size: 50% auto;
       background-position: 50% 50%;
       background-origin: content-box;
       background-clip: content-box;
       background-repeat: no-repeat;
    }
    

    效果图

    image.png

    参考资料

    张鑫旭对于html和body的背景色研究
    菜鸟教程背景属性

    相关文章

      网友评论

          本文标题:background系列属性

          本文链接:https://www.haomeiwen.com/subject/jrqppftx.html