整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

利用CSS3制作信纸背景,巧妙使用新增的背景属性,样式变得更有趣

篇文章结合上一篇所讲到的CSS3技术中有关背景的属性,制作一个实例。小海前端(头条号)带领大家一同实现一个漂亮的信纸背景效果。

承接文章:更加强大的背景图像,CSS3增强的背景效果,前端对背景的优化

技术等级:中级 | 适合有一定的CSS基础的人士阅读。

希望收藏了这篇文章的你同时也可以关注一下“小海前端”的头条号,因为这些文章都是连载的,并且是经过系统的归纳和总结的。塌下心来认真阅读,你一定会学到对你有用的知识。

一、信纸背景实例效果:

本篇文章所实现的信纸背景效果如下图所示。

信纸背景实例的最终效果图

首先要明确一点:上图中看到的除了文字以外的背景部分,并不是一张完整的背景图片,而是由多个具有透明背景的png图片利用CSS3的多重背景拼接出来的。

本实例所使用到的素材图片如下图所示。

用到的素材图片

从上图中可以看出,我们一共使用了六张素材图片。前五张图片都是png格式,背景为透明。最后一张图片是一个纹理jpg图片,可以随意设置透明效果的纹理。

  • left-bottom.png,实现左下角的花边效果。

  • left-top.png,实现左上角的花边效果。

  • right-bottom.png,实现右下角的花边效果。

  • right-top.png实现右上角的花边效果。

  • line.png,实现信纸的水平线格子效果

  • wenli.jpg,实现信纸的背景纹理效果。

跟着小海前端(头条号)学的小伙伴们,可以自行在网上搜索图片,利用Photoshop制作成素材的样子,大家可以发挥自己的设计头脑,制作出各种不同的信纸效果。

二、页面布局:

这个实例的页面布局非常简单,制作一个<div></div>标记对作为容器,并将该容器的id属性的取值设置为mail。然后在容器内部放置<h1></h1>标记对作为标题,信件的正文使用<p></p>标记对进行包裹即可。

HTML代码结构如下所示。

<div id="mail">

<h1>古埃及的金字塔</h1>

<p>信件的正文</p>

</div>

三、利用CSS设置#mail的常规属性:

为了便于查看,可以设置#mail的CSS样式。设置该容器的宽度为400像素,高度为600像素。并设置容器在页面内居中显示。将容器的填充宽度设置为50像素,并在容器外部添加一个10像素的深红色边框线。

最后调整内部文字的CSS样式。包括文字的字号设置为14像素,首行缩进为28像素,行高为27像素。当然也可以根据水平线格子的间隔高度自行调整上述参数。

CSS代码如下所示。

#mail{

width:400px; height:600px;

margin:0 auto;

padding:50px;

border:solid 10px rgba(132,26,26,0.8);

font-size: 14px;

line-height: 27px;

text-indent: 28px;

}

四、加载背景图片:

接下来我们要为#mail加载背景图片,这需要将素材图片中准备的所有png图片和wenli.jpg图片全部加载到该容器中作为背景。

CSS3中的background-image已经支持多背景图片的功能,只需要将多个图片的url()路径之间利用逗号隔开即可。一定要注意:必须是逗号进行间隔。

CSS代码如下所示。

background-image: url(../images/line.png),

url(../images/left-top.png),

url(../images/left-bottom.png),

url(../images/right-top.png),

url(../images/right-bottom.png),

url(../images/wenli.jpg);

五、设置多背景图片的背景属性:

下一步需要设置多背景图片的其他背景属性。这需要根据background-image属性加载背景图片的顺序来完成其他背景属性的设置。

这里需要注意,上一步的代码中显示,第一个加载的是水平线格子图片line.png,接下来一次加载的是左上角花边、左下角花边、右上角花边、右下角花边,最后是纹理图片wenli.jpg。

1、设置背景图片的平铺方式:

我们知道:第一个加载的水平线格子图片应该平铺;四个方向角的花边图片不应该平铺;纹理图片应该平铺。

因此根据背景图片的加载顺序可以书写成如下格式:

background-repeat: repeat,no-repeat,no-repeat,no-repeat,no-repeat,repeat;

大家仔细观察,所有的平铺取值都是使用逗号隔开的,而且共有6个平铺取值,正好对应background-image属性中加载的六张图片的顺序。

2、设置背景图片的定位:

这里使用background-position属性来设置背景图片的定位。

  • 第一个加载的水平线格子图片因为平铺,所以位置可以从容器的左上角就开始显示。因此取值为left top。

  • 左上角花边应该显示在左上角,即left top。

  • 左下角花边应该显示在左下角,即left bottom。

  • 右上角花边应该显示在右上角,即right top。

  • 右下角花边应该显示在右下角,即right bottom。

  • 最后一个加载的纹理图片因为也平铺,所以也从左上角开始显示。

CSS代码如下所示:

background-position: left top,left top,left bottom,right top,right bottom,left top;

3、设置图片的大小:

这里可以根据背景图片本身的大小进行适当的缩放。

CSS代码如下所示:

background-size: 50px,20%,20%,20%,20%,50px;

属性background-size原本需要指定两个数值来表示宽度和高度的大小变化。若只指定了一个数值,则宽度和高度均采用该数值来对图片进行缩放。

4、设置图片显示的原点坐标:

这里只有水平线格子图片和纹理图片的显示需要调整原点坐标。

  • 水平线格子只出现在由文本内容的部分,因此设置为content-box,从文本区域开始显示。

  • 纹理图片可以设置为padding-box,即从填充区域开始显示。

  • 其他图片都设置为border-box,即从边框开始显示。

CSS代码如下所示。

background-origin: content-box,border-box,border-box,border-box,border-box,padding-box;

5、设置图片的显示区域:

每张图片的显示区域都从所设置的原点坐标就开始显示,因此取值与原点坐标的取值是相同的。

CSS代码如下所示。

background-clip: content-box,border-box,border-box,border-box,border-box,padding-box;

六、整个实例的完整CSS代码:

本篇文章带领大家所制作的信纸背景效果的完整CSS代码如下图所示。

完整的CSS代码

小海声明

在头条上发表的这些文章都是从前端开发的基础开始一步一步讲起的。我非常希望能有更多的前端开发初学者通过我写的文章,逐步学到一定的知识,甚至慢慢有了入门的感觉。这些文章都是我这几年教学过程中的经验,每写一篇时我都尽量把握好措辞,用简单易懂的语言描述,同时精心设计版面,让版面更加丰富,激发阅读兴趣。所以,每一篇文章可能篇幅不长,但是都要耗费小海老师很久的时间。

希望收藏了这篇文章的你同时也可以关注一下“小海前端”的头条号,因为这些文章都是连载的,并且是经过系统的归纳和总结的。塌下心来认真阅读,你一定会学到对你有用的知识。

关注“小海前端”,我会继续为大家奉上更加深入的前端开发文章,也希望更多的初学者跟着学下去,我们共同将前端开发的路努力坚持的走下去。

文章预告

下一篇文章中,小海前端(头条号)会为小伙伴们继续介绍CSS3新增的属性值。下一篇文章介绍CSS3的边框属性功能。

篇文章主要讲述了CSS的基础用法,讲述了如何定义头文件,导入CSS文件,id和class选择器,元素选择器,后代选择器,子元素选择器,兄弟选择器,伪类选择器等等,让大家对CSS选择器有个简单的认识和了解。这篇接上篇文章,继续讲解CSS的基础用法。

背景Background

背景可以设置很多,比如背景颜色,背景图片,背景定位,背景重复,背景关联,

1)).背景颜色

<div style='background-color='red'></div>

2)).背景图片

<div style='background-image: url('1.png');'></div>

3)).背景定位

<div style='background-position:center'></div>
center   中间
top      顶部
bottom   底部
right    右边
left     左边
还可以使用百分比来设置定位:
<div style='background-position:40% 50%'></div>
或者设置像素值:
<div style='background-position:100px 100px'></div>

4)).背景显示方式

<div style=' background-repeat:repeat-x'></div>
repeat-x 水平平铺图片
repeat-y 垂直平铺图片
no-repeat 不平铺图片

5)).背景滚动条

<div style='background-attachment:fixed'></div>
fixed   固定 不出现滚动条
scroll  出现滚动条
no      没有滚动条

6)).背景大小

<div style='background-size:50px 50px'></div>

7)).背景图片的定位区域

<div style='background-origin:content-box'></div>
content-box  文本内容区域
padding-box   内边距区域
border-box    外边框区域

8)).背景裁剪区域

<div style='background-clip:content-box'></div>
content-box  裁剪文本内容区域
padding-box  裁剪内边距区域
border-box   裁剪外边框区域

总结

这篇文章主要介绍了CSS样式更改篇中的背景Background的基本设置,希望让大家对CSS选择器有个简单的认识和了解。
****看完本文有收获?请转发分享给更多的人****


想要学习更多,请前往Python爬虫与数据挖掘专用网站:http://pdcfighting.com/

reamweaver的CSS面板分类

type(类型)

background(背景)

block(区块)

box(方框) 或盒子意思

border(边框)

list(列表)

positioning(定位)

extensions(扩展)

共八个部分

1. type(类型)

type面板主要是对文字的字体,大小,颜色,效果等基本样式进行设置。

注意:属性名带*号的是指样式效果不能在编辑文档时显示,要用浏览器打开才能看到效果。

(1)font-family:设置字体系列。什么叫字体系列呢?是指对文字设定几个字体,当遇到第一个字体不能显示的文字时会自动用系列中的第二个

字体或后面的字体显示。

注意:一般英文字体我们用"Verdana, Arial, Helvetica, sans-serif"这个系列比较好看。如果不用这些字体系列,你就需要自己编辑字体系列,

也可以直接手动在下拉框里写字体名,字体之间用逗号隔开。中文网页默认字体是宋体, 一般就空着不要选取任何字体。

默认值: not specified(取决于浏览器,系统默认的字体, 如: 微软雅黑)


注意:

1.如果有汉字, 那么我们要加引号

2.如果有多个英文字母组成的单词, 我们也要加引号; "microsoft yahei" 中间用空格隔开

3.font-family:"黑体","宋体","华文隶书"; 首先找黑体, 没有黑体找宋体...

为了避免在CSS中使用 font 或 font-family 设置中文字体时乱码, 可以使用 Unicode 编码来表示字体。

/* 示例:使用Unicode字体编码设置字体为"微软雅黑" */
font-family: "\5FAE\8F6F\96C5\9ED1";


(2)font-size:定义文字的大小。你可以通过选取数字和度量单位来选择具体的字体大小,或者你也可以选择一个相对的字体大小。

最好使用pixels作为单位,这样不会在浏览器中文本变形。一般字体用比较标准的12px或14px, 默认值为16px。

注意:CSS中长度的单位分绝对长度单位和相对长度单位:

绝对长度单位有:

pt:磅(point)

mm、cn、in、pc:(毫米、厘米、英寸、活字)根据显示的实际尺寸来确定长度。

此类单位不随显示器的分辨率改变而改变。

相对长度单位有:

px:(像素)根据显示器的分辨率来确定长度。

em:当前文本的尺寸。例如:{font-size:2em}是指文字大小为原来的2倍。

比如自身font-size: 30px; 那么此时1em=30px;

ex:当前字母"x"的高度,一般为字体尺寸的一半。

%:是以当前文本的百分比定义尺寸。例如:{ font-size:300%}是指文字大小为原来的3倍。

small、large:表示比当前小一个级别或大一个级别的尺寸。

默认值:medium(标准大小)


(3)font-style:定义字体样式为normal、italic、oblique。默认设置为normal。

注意: italic 斜体 oblique 歪斜体 italic和oblique实际效果是一样的。

默认值:normal


(4)line-height:设置文本所在行的行高。默认为normal。可以是行内元素、行内块元素, 通常与height设置的高度值相同, 可以做到垂直居中的作用。

你也可以自己键入一个精确的数值并选取一个计量单位。

比较直观的写法用百分比, 例如140%是指行高等于文字大小的1.4倍。

最常用的方法: line-height:1.5em; /*行间距,相对数值,1.5倍行距,*/ 可有效的避免文字发生重叠

默认值: normal


(5)text-decoration:在文本中添加underline(下划线)、overline(上划线)、line-through(中划线)、blink(闪烁效果)。

这些效果可以同时存在,将效果前的复选框选定即可。

注意:链接的默认设置是underline,我们可以通过选none去除下划线。blink(闪烁效果)只在mozilla浏览器里可以看到, IE、opera不支持

默认值: none


(6)font-weight:给字体指定粗体字的磅值。

normal 默认值。定义标准的字符。

bold 定义粗体字符。

bolder 定义更粗的字符。

lighter 定义更细的字符。

100

200

300

400

500

600

700

800

900

inherit 规定应该从父元素继承字体的粗细。

定义由粗到细的字符。400 等同于 normal, 而 700 等同于 bold。

默认值: normal


(7)font-variant:允许你选取字体的变种, 选small-caps(小型大写字母)时, 此样式区域内所有字母大写。

normal表示正常的字体, 为默认值;

默认值: normal


(8)text-transform:将选区中每个单词的第一个字母转为大写, 或者令单词全部大写或全部小写。

参数:capitalize(单词首字母大写)、uppercase(转换成大写)、lowercase(转换成小写)、none(不转换)。

默认值:none


(9)color:定义文字颜色。包括对表单输入的文字颜色。

CSS中颜色的值有三种表示方法:

#RRGGBB格式,是由红绿蓝三种颜色的值组合,每种颜色的值为"00 – FF"的两位十六进制正整数。

例如:#FF0000表示红色,#FFFF00表示黄色。

rgb(R,G,B)格式, RGB为三色的值, 取0~255, 例如:rgb(255,0,0)表示红色, rgb(255,255,0)表示黄色。

用颜色名称。CSS可以使用已经定义好的颜色名称。例如:red表示红色, yellow表示黄色。

颜色值的缩写:

p{color:#000000} 可以缩写为:p{color:#000}

p{color:#336699} 可以缩写为:p{color:#369}

默认值: not specified


color: transparent; 透明色


rgba() 解释: rgba(红0-255, 绿0-255, 蓝0-255, 透明度0-1)


注意: 如果文字的颜色通过单独的类选择去设置没有改变颜色, 则应该通过组合选择器(.header .top .topR .blue)去设置, 改变它的优先级。




2. background(背景)

background面板主要是对元素的背景进行设置,包括背景颜色、背景图象、背景图象的控制。

一般是对body(页面)、table(表格)、div(区域)的设置。

(1)background-color:设置元素的背景色。包括对input表单输入框的背景颜色;

默认值: transparent(背景颜色为透明)


rgba() 解释: rgba(红0-255, 绿0-255, 蓝0-255, 透明度0-1) 一般用于背景色


(2)background-image:设置元素的背景图像。

默认值:none

CSS3支持多重背景图,只要加上一个url指定图片路径,并用逗号(,)将两组url分隔就可以了

background-image:url(a.jpg),url(b.jpg);


base64使用

background-image: url("data:image/png;base64,iVBORw0KGgo=...");


(3)background-repeat:确定背景图像是否以及如何重复。

repeat 默认值。背景图像将在垂直方向和水平方向重复。

repeat-x 背景图像将在水平方向重复。

repeat-y 背景图像将在垂直方向重复。

no-repeat 背景图像将仅显示一次。

inherit 规定应该从父元素继承background-repeat属性的设置。

注意:如果定义的元素的body,可以控制页面背景是否重复。

默认值: repeat


(4)background-attachment:固定背景图像或者跟随内容滚动。

参数fixed表示固定背景(不随屏幕滚动而滚动,决定背景图像是否要固定在原来的位置), scroll表示跟随内容滚动的背景。

注意:如果定义的元素的body, 可以使页面背景固定。

默认值: scroll


(5)background-position(X):指定背景图像的水平位置。

可以指定为left(左边), center(居中),right(右边);

也可以指定数值,如20px是指背景距离左边20象素。

background-position(Y):指定背景图像的垂直位置。

可以指定为top(顶部), center(居中), bottom(底部);也可以指定数值。

background-position属性值:

left top

center top

right top

left center

center center

right center

left bottom

center bottom

right bottom

如果您仅规定了一个关键词,那么第二个值将是"center"。

注意:采用英文单词的水平位置和垂直位置的属性值可以调换

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

xpos ypos 第一个值是水平位置,第二个值是垂直位置。左上角是 0 0。单位是像素 (0px 0px) 或任何其他的 CSS 单位。

如果您仅规定了一个值,另一个值将是50%。

您可以混合使用 % 和 position 值。

默认值:0% 0%