CSS入门(背景各种属性的详解、垂直居中和过渡效果的详解、渐变效果的简单讲解)

一、各种背景属性

1.background-image 属性为元素设置背景图像。

元素的背景占据了元素的全部尺寸,包括内边距和边框,但不包括外边距。

默认地,背景图像位于元素的左上角,并在水平和垂直方向上重复。

提示:请设置一种可用的背景颜色,这样的话,假如背景图像不可用,页面也可获得良好的视觉效果。

属性值:
url(‘URL‘)   指向图像的路径。
none      默认值。不显示背景图像。
inherit     规定应该从父元素继承 background-image 属性的设置。

2.background-size 属性规定背景图像的尺寸。

语法:
background-size: length|percentage|cover|contain;

属性值:
length    设置背景图像的高度和宽度。第一个值设置宽度,第二个值设置高度。如果只设置一个值,则第二个值会被设置为 "auto"。
percentage   以父元素的百分比来设置背景图像的宽度和高度。第一个值设置宽度,第二个值设置高度。如果只设置一个值,则第二个值会被设置为 "auto"。
cover       把背景图像扩展至足够大,以使背景图像完全覆盖背景区域。背景图像的某些部分也许无法显示在背景定位区域中。
contain      把图像图像扩展至最大尺寸,以使其宽度和高度完全适应内容区域。

3.background-repeat 属性设置是否及如何重复背景图像。

默认地,背景图像在水平和垂直方向上重复。

属性值:
repeat    默认。背景图像将在垂直方向和水平方向重复。
repeat-x    背景图像将在水平方向重复。
repeat-y    背景图像将在垂直方向重复。
no-repeat    背景图像将仅显示一次。
inherit     规定应该从父元素继承 background-repeat 属性的设置。

4.background-attachment 属性设置背景图像是否固定或者随着页面的其余部分滚动。

属性值:
scroll    默认值。背景图像会随着页面其余部分的滚动而移动。
fixed     当页面的其余部分滚动时,背景图像不会移动。
inherit   规定应该从父元素继承 background-attachment 属性的设置。

5.background-position 属性设置背景图像的起始位置。

这个属性设置背景原图像(由 background-image 定义)的位置,背景图像如果要重复,将从这一点开始。

提示:您需要把 background-attachment 属性设置为 "fixed",才能保证该属性在 Firefox 和 Opera 中正常工作。

属性值:

top left
top center
top right
center left
center center
center right
bottom left
bottom center
bottom right

(如果您仅规定了一个关键词,那么第二个值将是"center"。默认值:0% 0%。)

x% y%

(第一个值是水平位置,第二个值是垂直位置。左上角是 0% 0%。右下角是 100% 100%。如果您仅规定了一个值,另一个值将是 50%。)

xpos ypos

(第一个值是水平位置,第二个值是垂直位置。左上角是 0 0。单位是像素 (0px 0px) 或任何其他的 CSS 单位。如果您仅规定了一个值,另一个值将是50%。您可以混合使用 % 和 position 值。)

二、关于垂直对齐方式和过渡属性的拓展讲解

1.vertical-align 属性设置元素的垂直对齐方式。

属性值:

baseline     默认。元素放置在父元素的基线上。

sub       垂直对齐文本的下标。

super      垂直对齐文本的上标

top       把元素的顶端与行中最高元素的顶端对齐

text-top    把元素的顶端与父元素字体的顶端对齐

middle       把此元素放置在父元素的中部。

bottom      把元素的顶端与行中最低的元素的顶端对齐。

text-bottom   把元素的底端与父元素字体的底端对齐。

length

%         使用 "line-height" 属性的百分比值来排列此元素。允许使用负值。

inherit       规定应该从父元素继承 vertical-align 属性的值。

2.transition 属性是一个简写属性,用于设置四个过渡属性:

语法:

transition: property duration timing-function delay;

属性值:

transition-property 规定设置过渡效果的 CSS 属性的名称。

transition-duration 规定完成过渡效果需要多少秒或毫秒。

transition-timing-function 规定速度效果的速度曲线。

transition-delay 定义过渡效果何时开始。

(1).transition-property代表的属性值以及相关用法(规定设置过渡效果的 CSS 属性的名称)

语法:
transition-property: none|all|property;

属性值:

none    没有属性会获得过渡效果。
all      所有属性都将获得过渡效果。
property   定义应用过渡效果的 CSS 属性名称列表,列表以逗号分隔。

(2).transition-duration代表的属性值以及相关用法(规定完成过渡效果需要多少秒或毫秒)

语法:
transition-duration: time;

属性值:

time
规定完成过渡效果需要花费的时间(以秒或毫秒计)。默认值是 0,意味着不会有效果。

(3).transition-timing-function代表的属性值以及相关用法(规定速度效果的速度曲线)

语法:transition-timing-function: linear|ease|ease-in|ease-out|ease-in-out|cubic-bezier(n,n,n,n);

属性值:

linear 规定以相同速度开始至结束的过渡效果(等于 cubic-bezier(0,0,1,1))。

ease 规定慢速开始,然后变快,然后慢速结束的过渡效果(cubic-bezier(0.25,0.1,0.25,1))

ease-in 规定以慢速开始的过渡效果(等于 cubic-bezier(0.42,0,1,1))。

ease-out 规定以慢速结束的过渡效果(等于 cubic-bezier(0,0,0.58,1))。

ease-in-out 规定以慢速开始和结束的过渡效果(等于 cubic-bezier(0.42,0,0.58,1))。

cubic-bezier(n,n,n,n) 在 cubic-bezier 函数中定义自己的值。可能的值是 0 至 1 之间的数值。

(4).transition-delay代表的属性值以及相关用法(规定过渡效果何时开始)

语法:

transition-delay: time;

属性值:

time 规定在过渡效果开始之前需要等待的时间,以秒或毫秒计。

三、渐变

1.什么是渐变?

两种或者多种颜色间平滑度过的效果。

2.分类:

(1).线型渐变
(2).径向渐变
(3).重复渐变 加上 repeating

3.渐变的组成

(1).线型渐变

色标:决定了渐变的每种颜色及出现的位置
每个渐变效果都是由多个色标组成(2个以上)

语法:linear-gradient([<angle(方向)> | to <side-or-corner(角度大小)>]? , <color-stop-list(起始颜色)>)

属性值:

angle:

to top      从下往上

to bottom     从上往下

to left      从右往左

to right      从左往右

to top right    从左下往右上

to top left    从右下往左上

to bottom right   从左上往右下

to bottom left   从右上往左下

side-or-corner:

接受一个表示角度的值(可用的单位deg、rad、grad或turn)

0deg(度) 对应 to top
90deg  对应 to right
180deg  对应 to bottom
270deg  对应 to left

中途省略的是渐变颜色的第一个颜色为起始颜色(若只有一个颜色值则这个颜色为终止点的颜色)

在第一个和最后一个颜色之间的颜色为中间色,所有颜色会以设定的方向在未给予颜色区域大小的时候平均渐变颜色。

color-stop-list:<color-stop>=<color>I <dength>I <percentage>]

接受一系列颜色节点(终止点的颜色)

<color>:指定颜色。
<length>:用长度值指定起止色位置。不允许负值
<percentage>:用百分比指定起止色位置。

(2).径向渐变

语法:radial-gradient([side] at [position]? , <color-stop-list(起始颜色)>)

属性值:

size :

圆的半径 单位为px

position:x y

接受一个表示圆心的位置的值(可用的单位:px、百分比、top center bottom left right)

中途省略的是渐变颜色的第一个颜色为起始颜色(若只有一个颜色值则这个颜色为终止点的颜色)

在第一个和最后一个颜色之间的颜色为中间色,所有颜色会以设定的方向在未给予颜色区域大小的时候平均渐变颜色。

color-stop-list:<color-stop>=<color>I <dength>I <percentage>]

接受一系列颜色节点(终止点的颜色)

<color>:指定颜色。
<length>:用长度值指定起止色位置。不允许负值
<percentage>:用百分比指定起止色位置。

(3).重复渐变

原有基础上加上加上 repeating

repeating-linear-gradient()(重复的线性渐变)

语法跟上面的 linear-gradient() 是一样的。

只不过 linear-gradient 后面没填充完的 地方用了最后一个颜色填充。

repeating-linear-gradient 他是用填充好的效果,重复填充 还没填充的地方

repeating-radial-gradient()(重复的镜像渐变)

语法和上面一样。

只不过 radial-gradient 后面没填充完的 地方用了最后一个颜色填充。

repeating-radial-gradient 他是用填充好的效果,重复填充 还没填充的地方

 四、雪碧图和精灵图

雪碧图(将很多很多的小图标放在一张图片)、精灵图(经过background-position)
方法:

1.运用PS切图,把几个部分粘贴到一个图层,记下每个图片的大小,同时大的粘贴板宽取所有图宽的和,高取所有图中的最大值
2.运用背景图的方式插入,设置每个图片的div大小,同时通过调整图片位置background-position的方式达到准确添加背景图的目的

好处:

1.加快加载速度
2.后期维护简单
3.能减少图片的字节,曾经比较过多次3张图片合并成1张图片的字节总是小于这3张图片的字节总和。
4.解决了网页设计师在图片命名上的困扰,只需对一张集合的图片上命名就可以了
5.更换风格方便,只需要在一张或少张图片上修改图片的颜色或样式,整个网页的风格就可以改变。维护起来更加方便

缺点:

1、在图片合并的时候,你要把多张图片有序的合理的合并成一张图片,还要留好足够的空间,防止板块内出现不必要的背景;这些还好,最痛苦的是在宽屏,高分辨率的屏幕下的自适应页面,你的图片如果不够宽,很容易出现背景断裂; 
2、至于可维护性,这是一般双刃剑。可能有人喜欢,有人不喜欢,因为每次的图片改动都得往这个图片删除或添加内容,显得稍微繁琐。而且算图片的位置(尤其是这种上千px的图)也是一件颇为不爽的事情。当然,在性能的口号下,这些都是可以克服的。 
3、由于图片的位置需要固定为某个绝对数值,这就失去了诸如center之类的灵活性。 
4、前面我们也提到了,必须限制盒子的大小才能使用CSS Sprites,否则可能会出现出现干扰图片的情况。这就是说,在一些需要非单向的平铺背景和需要网页缩放的情况下,CSS Sprites并不合适。YUI的解决方式是,加大图片之间的距离,这样可以保持有限度的缩放。

以上“雪碧图与精灵图”解释转自CSDN博主「_52赫兹_」的原创文章

原文链接:https://blog.csdn.net/MYTLJP/article/details/78209698

原文地址:https://www.cnblogs.com/MDZZZ/p/12026373.html

时间: 2024-10-10 08:13:45

CSS入门(背景各种属性的详解、垂直居中和过渡效果的详解、渐变效果的简单讲解)的相关文章

css background 背景知识详解

background 背景属性 我们知道元素有前景色color,与之对应的还有背景色,通过background我们可以为元素添加实色(background-color)和任意多个背景图片(background-image). css 背景常见属性 background-color background-position background-size background-repeat background-origin background-clip background-attachment

Android基础入门教程——8.3.7 Paint API之—— Xfermode与PorterDuff详解(四)

Android基础入门教程--8.3.7 Paint API之-- Xfermode与PorterDuff详解(四) 标签(空格分隔): Android基础入门教程 本节引言: 上节我们写了关于Xfermode与PorterDuff使用的第一个例子:圆角&圆形图片ImageView的实现, 我们体会到了PorterDuff.Mode.DST_IN给我们带来的好处,本节我们继续来写例子练练手, 还记得Android基础入门教程--8.3.2 绘图类实战示例给大家带来的拔掉美女衣服的实现吗? 当时我

Android基础入门教程——8.3.6 Paint API之—— Xfermode与PorterDuff详解(三)

Android基础入门教程--8.3.6 Paint API之-- Xfermode与PorterDuff详解(三) 标签(空格分隔): Android基础入门教程 本节引言: 上一节,我们学习了Xfermode中的三儿子:PorterDuffXfermode构造方法中的为一个参数: PorterDuff.Mode,我们在观看了16种图片混排模式后,又自己写代码来验证了一下文档中 18种不同的混排模式,18种是新增了ADD和OVERLAY两种模式!当然,仅仅验证知道是不够的, 本节我们来写个例子

Android基础入门教程——8.3.8 Paint API之—— Xfermode与PorterDuff详解(五)

Android基础入门教程--8.3.8 Paint API之-- Xfermode与PorterDuff详解(五) 标签(空格分隔): Android基础入门教程 本节引言: 好的,上一节中,我们又写了一个关于Xfermode图片混排的例子--擦美女衣服的Demo,加上前面的 利用Xfermode来实现圆角或圆形ImageView,相信大家对Xfermode已经不再像以前那么陌生了,或者 说有点熟悉了,嗯,本节我们来写Xfermode的最后一个例子,通过Xfermode的ProterDuff.

Android基础入门教程——8.3.4 Paint API之—— Xfermode与PorterDuff详解(一)

Android基础入门教程--8.3.4 Paint API之-- Xfermode与PorterDuff详解(一) 标签(空格分隔): Android基础入门教程 本节引言: 不知道标题这两个玩意你熟不熟悉啦,如果自己实现过圆角或者圆形图片,相信对这两个名词 并不模式,一时半伙没想起来?没关系,下面这个图你可曾见过? PS:网上都说在:\samples\android-XX\legacy\ApiDemos\src\com\example\android\apis\graphics 下能找到这个

Android研究之属性动画(Property Animation)完全解析详解下

 上一篇Android研究之属性动画(Property Animation)完全解析详解上已经基本展示了属性动画的核心用法: ObjectAnimator实现动画,ValueAnimator实现动画,AnimatorSet的使用等~ 当然了属性动画还有一部分的知识点,也能做出很不错的效果,将在本篇博客为您展示~ 1.如何使用xml文件来创建属性动画 大家肯定都清楚,View Animator .Drawable Animator都可以在anim文件夹下创建动画,然后在程序中使用,甚至在The

CSS下背景属性background的使用方法

背景颜色(background-color) CSS可以用纯色来作为背景,也可以将背景设置为透明,background相当于xhtml中的bgcolor. 它的两个值: transparent(默认值,透明) color(指定的颜色,和文本颜色的设置方法相同) 示例: body {background-color: black;} h1 {background-color: #00ff00;} h2 {background-color: transparent;} p {background-c

CSS背景颜色属性值转换

<!DOCTYPE html> <html><head><meta charset="UTF-8"> <title>CSS背景颜色属性值转换</title> <style type="text/css"> .top_tips { position:relative; width:1000px; margin:20px auto; padding:10px; color:#272727

CSS入门之引用、选择器、属性(六分之三)

CSS 入门教程六分之三篇 没办法,我直播教小伙伴CSS入门,属性讲完,准备说定位的时候,他们就喊停,hold不住了...所以先写到六分之三,23333333 要点 解释 引用 如何使用定义的CSS样式方式 选择器 指明被定义样式的标签 属性 样式定义时具体定义的内容 定位 如何将标签放置到具体的位置(下篇) 盒模型 面试经典题(下篇) 显示 如何显示标签与标签布局(下篇) 引用 内联 开标签或自闭合标签的style属性上写明对应的CSS定义内容,即为内联方式引用,如下: <div style=