唐山网站定制:重温CSS背景属性

2019.08.02 mf_web

168

学习CSS:完整指南

我们已经构建了一个完整的指南来帮助您学习CSS,无论您是刚刚开始使用基础知识还是想要探索更高级的CSS。

在本教程中,我们将研究一个较旧的,更熟悉的CSS属性:background。 background是几个CSS属性之一,其功能经常被忽略。事实上,它看到了CSS3的升级,除了添加背景图像或颜色之外还接受了新的功能。让我们来看看其中的一些!

1.背景位置偏移

天线宝宝第一高手论坛-tt538天线宝宝开奖结果-天线宝宝论坛精选资料专区-天线宝宝论坛开奖结果定位背景图形很简单,而且您可能已经熟悉了。如果我们想定位的背景元素的右下角,我们申请bottom right到background-position。例如:

1
2
3
4
6
7
8
9
#workspace {
    width: 100%;
    max-width: 668px;
    height: 400px;
    background-color: #525d62;
    background-image: url(images/macbook.png);
    background-repeat: no-repeat;
    background-position: right bottom;
}

天线宝宝第一高手论坛-tt538天线宝宝开奖结果-天线宝宝论坛精选资料专区-天线宝宝论坛开奖结果或者,用简写background,在url定义之后:

1
2
3
4
6
#workspace {
    width: 100%;
    max-width: 668px;
    height: 400px;
    background: #525d62 url(images/macbook.png) no-repeat right bottom;
}

天线宝宝第一高手论坛-tt538天线宝宝开奖结果-天线宝宝论坛精选资料专区-天线宝宝论坛开奖结果自CSS3问世以来,我们已经能够指定位置偏移量; 到设定位置的精确距离。以我们的例子为例bottom right,我们包括从底部和左侧bottom 20px right 30px定位背景。20px30px

1
2
3
4
6
7
8
9
#workspace {
    width: 100%;
    max-width: 668px;
    height: 400px;
    background-color: #525d62;
    background-image: url(images/macbook.png);
    background-repeat: no-repeat;
    background-position: right 30px bottom 20px;
}

天线宝宝第一高手论坛-tt538天线宝宝开奖结果-天线宝宝论坛精选资料专区-天线宝宝论坛开奖结果的位置(bottom,top,right,left)可以以任何顺序来定义,但偏移长度必须被定义后的每个背景位置。

2.多个背景图像

该background属性还允许我们添加多个背景图像。因此,让我们用更多东西和小工具扩展我们之前的例子。

我们将这些图像添加到单个background或background-image声明中,方法是用逗号分隔每个图像。我们使用background-position属性,该属性也接受多个值来控制每个背景图像。

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
#workspace {
    height: 400px;
    background-color: #525d62;
    background-image:
        url(images/macbook.png),
        url(images/mouse.png),
        url(images/hdd.png),
        url(images/phone.png),
        url(images/ipad.png),
        url(images/coffee.png),
        url(images/camera.png);
    background-repeat: no-repeat;
    background-position:
            50% 50%,   /* macbook.png */
            75% 295px, /* mouse.png */
            75% 230px, /* hdd.png */
            96% 240px, /* phone.png */
            20% 250px, /* ipad.png */
            22% 190px, /* coffee.png */
            7% 280px; /* camera.png */
}

天线宝宝第一高手论坛-tt538天线宝宝开奖结果-天线宝宝论坛精选资料专区-天线宝宝论坛开奖结果我们可以使用固定单位(如像素),灵活单位(如百分比)或两者的组合。

每对值表示从坐标左上角的容器元素,给左上角的图像。例如,摄像机图像的左上角距容器顶部280px,然后是左侧可用宽度的7%。

天线宝宝第一高手论坛-tt538天线宝宝开奖结果-天线宝宝论坛精选资料专区-天线宝宝论坛开奖结果注意:可用宽度是容器元素的总宽度减去背景图像的宽度。因此,沿x轴定位50%的背景图像显示为精确居中!

运动

此外,由于它background-position是一个可动画的属性,我们可以创建一个更生动,引人注目的背景:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
三十
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#workspace {
    width: 600px;
    height: 400px;
    background-color: #525d62;
    background-repeat: no-repeat;
    background-image:
        url(images/macbook.png),
        url(images/mouse.png),
        url(images/hdd.png),
        url(images/phone.png),
        url(images/ipad.png),
        url(images/coffee.png),
        url(images/camera.png);
    background-position:
        50% 50%,
        430px 295px,
        425px 230px,
        480px 240px,
        105px 250px,
        120px 190px,
        40px 280px;
    animation: 3s ease 0s inView forwards;
}
@keyframes inView {
    0% {
        background-position-y: 600%, 451px, -448px, 240px, 496px, -44px, 280px;
        background-position-x: 50%, 75%, 75%, 200%, 20%, 22%, -100%;
    }
    20% {
        background-position-y: 50%, 451px, -448px, 240px, 496px, -44px, 280px;
        background-position-x: 50%, 75%, 75%, 200%, 20%, 22%, -100%;
    }
    30% {
        background-position-y: 50%, 295px, -448px, 240px, 496px, -44px, 280px; 
        background-position-x: 50%, 75%, 75%, 200%, 20%, 22%, -100%;
    }
    40% {
        background-position-y: 50%, 295px, 230px, 240px, 250px, -44px, 280px;
        background-position-x: 50%, 75%, 75%, 200%, 0%, 22%, -100%;
    }
    50% {
        background-position-y: 50%, 295px, 230px, 240px, 250px, 190px, 280px;
        background-position-x: 50%, 75%, 75%, 96%, 0%, 22%, -100%;
    }
    60% {
        background-position-y: 50%, 295px, 230px, 240px, 250px, 190px, 280px;
        background-position-x: 50%, 75%, 75%, 96%, 0%, 22%, 7%;
    }
    100% {
        background-position-y: 50%, 295px, 230px, 240px, 250px, 190px, 280px;
    }
}

天线宝宝第一高手论坛-tt538天线宝宝开奖结果-天线宝宝论坛精选资料专区-天线宝宝论坛开奖结果在这里,我们在时间轴上设置了许多关键帧。在每个关键帧,我们已经改变了background-position-x与background-position-y每一个背景图像。动画无疑是初步的,所以请恭喜CodePen并改进它!

几个值得注意的要点

我们使用的背景按顺序排列; 第一个列出的列表出现在堆栈的顶部,而列出的最后一个列表将出现在背景堆栈的底部。

01
02
03
04
05
06
07
08
09
10
11
12
13
14
#workspace {
    width: 600px;
    height: 400px;
    background-color: #525d62;
    background-image:
        url(images/macbook.png),
        url(images/mouse.png),
        url(images/hdd.png),
        url(images/phone.png),
        url(images/ipad.png),
        url(images/coffee.png),
        url(images/camera.png); /* stacked at the bottom */
    background-repeat: no-repeat;
}

所有的背景子属性(background-repeat,background-size,background-position等等)可以被定义多次,除了background-color。如果我们使用速记background属性应用多个背景,请将背景颜色定义为要生效的最新值。例如:

1
2
3
4
6
7
#workspace {
    height: 400px;
    background:
        url(images/macbook.png) 50% 50% no-repeat,
        url(images/mouse.png) 430px 295px no-repeat,
        url(images/camera.png) 425px 230px no-repeat #525d62;
}

天线宝宝第一高手论坛-tt538天线宝宝开奖结果-天线宝宝论坛精选资料专区-天线宝宝论坛开奖结果或者,background-color在短手属性之后添加一个单独的:

1
2
3
4
6
7
8
9
#workspace {
    width: 600px;
    height: 400px;
    background:
        url(images/macbook.png) 50% 50% no-repeat,
        url(images/mouse.png) 430px 295px no-repeat,
        url(images/camera.png) 425px 230px no-repeat;
    background-color: #525d62;
}

天线宝宝第一高手论坛-tt538天线宝宝开奖结果-天线宝宝论坛精选资料专区-天线宝宝论坛开奖结果这两个代码都是一样的,但我发现后者更直观,更易读。

3.混合背景图像

该background-blend-mode做的,你会在图形应用程序如Photoshop或Gimp找到相同的; 它将背景图像彼此混合,以及下面的任何东西。

在background-blend-mode采用熟悉的值,比如overlay和multiply其中几个人了约拿Cutrell确实在他的主题教程解释了出色的工作。我强烈建议你阅读它,以便我们可以跳到一些实际的例子。

有几种方法可以使用CSS混合模式来创建引人注目的设计,例如将渐变与图像混合,Ian Yates在他的灵感综述中指出:

要创建此效果,我们添加背景图像和渐变,并应用overlay混合模式。

1
2
3
4
6
#blend {
    background-repeat: no-repeat;
    background-image: url( 'img/people-15.jpg' ),
                      linear-gradient(135deg, rgba(175,0,79,1) 0%,rgba(255,114,187,1) 100%);
    background-blend-mode: overlay;
}

天线宝宝第一高手论坛-tt538天线宝宝开奖结果-天线宝宝论坛精选资料专区-天线宝宝论坛开奖结果叠加层会影响此处列出的两个背景,因此如果您不希望所有内容混合在一起,则可能需要谨慎。如果我们想要避免与背景颜色混合的所有内容,请设置normal将应用于第二个背景图像的第二个值。

1
2
3
4
6
7
#blend {
    background-repeat: no-repeat;
    background-image: url( '../img/people-15.jpg' ),
                      linear-gradient(135deg, rgba(175,0,79,1) 0%,rgba(255,114,187,1) 100%);
    background-color: yellow;
    background-blend-mode: overlay, normal;
}

4.背景剪辑

该background-clip属性是一个实用程序,它控制CSS内容框模型中背景颜色和图像的跨度。与box-sizing属性类似,该background-clip属性采用三个有效值,即:

  • border-box 是默认值,它跨越背景图像或颜色一直到元素的外边缘。

  • padding-box将跨越背景直到填充的外边缘,或换句话说; 边界的内缘。

  • 天线宝宝第一高手论坛-tt538天线宝宝开奖结果-天线宝宝论坛精选资料专区-天线宝宝论坛开奖结果content-box 将保留元素内容中的背景,如下所示:

我发现background-clip方便的一个实际例子是我必须使用单个元素创建带图标的按钮。在下面的演示中,我们的图像跨越元素的左边缘到右边缘,即使我们在每一边都添加了填充,因为它仍然适用border-box。

如果我们想用一些空格包围图标,我们传统上必须用另一个元素包装它并在该额外元素上应用填充。使用该background-clip属性,我们可以通过设置它来优雅地完成它content-box,并用与背景颜色相同颜色的边框替换填充。

包起来

该background物业是我们在项目中经常使用的物业。希望这篇文章能够提醒您它的广泛和多样的用途,我期待在评论中听到更多的想法。

最后一点说明:浏览器对这些属性的支持(除了background-blend-mode)都很棒。据CanIUse称,从Internet Explorer 9开始支持多种背景,只有几个小问题。背景图像选项(例如background-clip属性)几乎一样好。

唐山网站定制

最新案例

联系电话 400-6065-301
赚钱高手两组三中三-三中三复式计算公式-三码中特全免费公开码 本港台现场报码直播j2-本港开奖结果现场开码-本港台现场搅珠直播 正版管家婆一句赢大钱-www管家婆27735com-管家婆小鱼儿论坛心水 九龙心水三肖永不改料-九龙心水525757com-九龙老牌图库彩图大全 澳门123696com开奖结果-626969cc澳门资料大全-2021澳门合彩开彩结果