Uint 7.文本和字体属性,background,精灵图和3种定位

  

一. 文本属性

  CSS 文本属性可定义文本的外观。

  通过文本属性,您可以改变文本的颜色、字符间距,对齐文本,装饰文本,对文本进行缩进,等等。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>文本属性和字体属性</title>
<style type="text/css">
/* font-weight:表示字体粗细,bold或者bolder表示粗体 */
/* font-family:设置字体,如果没有匹配的字体,那么默认就是宋体; */
/* text-align:center,设置文本居中,s; */
/* text-decoration:underlin red 设置下划线和下划线颜色,默认none.一般使用这个属性来清除a标签的下划线; */
/*line-height:100px 设置行高.; */
/* text-indent:20px 设置缩进; 也可以使用text-indent:1em,表示缩进1字体.缩进以em为准*/
div{
width: 200px;
height: 1000px;
border: 2px solid gold;
font-size: 20px;
font-weight: bolder;
font-family: "Microsoft Yahei","微软雅黑";
text-align: center;
text-decoration: underline pink;
/* line-height: 100px; */
text-indent: 2em; }
</style>
</head>
<body>
<div>
CSS最重要的目标是将文件的内容与它的显示分隔开来。在CSS出现前,几乎所有的HTML文件内都包含文件显示的信息,比如字体的颜色、背景应该是怎样的、如何排列、边缘、连线等等都必须一一在HTML文件内列出,有时重复列出。CSS使作者可以将这些信息中的大部分隔离出来,简化HTML文件,这些信息被放在一个辅助的,用CSS语言写的文件中。HTML文件中只包含结构和内容的信息,CSS文件中只包含样式的信息。
</div>
</body>
</html>

常用文本和字体属性

二. 背景属性

  使用background-*一些属性来对网页背景进行设计.  

  常用背景属性:

  Uint 7.文本和字体属性,background,精灵图和3种定位

background-repeat取值范围:

Uint 7.文本和字体属性,background,精灵图和3种定位

background-attachment取值范围:

Uint 7.文本和字体属性,background,精灵图和3种定位

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>color repeat和image属性</title>
<style type="text/css">
.b_color{
float: left;
width: 300px;
height: 300px;
border: 1px solid red;
/* 设置背景色 */
background-color: green;
overflow: hidden;
}
.b_img{
float: left;
width: 600px;
height: 800px;
border: 1px solid pink;
/* repeat: 设置背景图片不重复加载; */
background-repeat: no-repeat;
/* image里url是图片的路径. */
background-image: url('./images/bojie.jpg')
} </style>
</head>
<body>
<div class="b_color"> </div>
<div class="b_img"> </div> </body>
</html>

背景属性

三. 精灵图

  在计算机图形学中,当一张二维图像集成进场景中,成为整个显示图像的一部分时,这张图就称为精灵图(Sprite)

  利用background-position属性,可以截取去我们想要的图片.图片下载

  

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>css精灵图技术</title>
<style type="text/css">
.box1{
width: 48px;
height: 48px;
background-image: url(./images/1.png);
background-repeat: no-repeat;
background-position: 00px -528px
}
.box2{
width: 48px;
height: 48px;
background-image: url(./images/1.png);
background-repeat: no-repeat;
/* 第一个参数(x)表示水平方向上移动的像素,第二个参数(y)是竖直方向上的移动的像素.可以是负数.在负数的情况下,x移出屏幕左边,y向上移动.
*/
background-position: 00px -703px
}
</style>
</head>
<body>
<div class="box1"> </div>
<div class="box2"> </div>
</body>
</html>

精灵图案例

四. 背景定位

  background-position :规定背景图像的位置。

  常用属性:

  Uint 7.文本和字体属性,background,精灵图和3种定位

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>background-position</title>
<style type="text/css">
*{
padding: 0;
margin: 0;
}
div{
width: 1200px;
height: 800px;
background-image: url(./images/bojie.jpg);
background-repeat: no-repeat;
background-position: center top;
}
</style>
</head>
<body>
<div class="sex"> </div>
</body>
</html>

居中图片

backgroup-attach实例

五. 定位

  5.1相对定位

  设置为相对定位的元素框会偏移某个距离。元素仍然保持其未定位前的形状,它原本所占的空间仍保留。

  3种定位方式:
  1.相对定位:position:relative;
  2.绝对定位:position:absolute;
  3.固定定位:position:fixed;

  

  特性:
  1.不脱标,元素不脱离标准流.
  2.形影分离
  3.老家留坑

  2个作用:
  1.元素微调
  2.做绝对定位的参考(术语:父相子绝)

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>相对定位</title>
<style type="text/css">
div{
width: 300px;
height: 300px;
background-color: green;
/*如果仅对当前元素设置相对定位,那么该元素就与标准文档流中的元素一样了*/
position: relative;
/*设置了相对定位,我们就可以使用4个方向的属性了 left right top bottom
相对定位:是相对于原来的自己定位.top20px表示相对于原来的位置向下移动20px.相对定位仅仅微调我们元素的位置.
*/
top: 20px;
left: 30px;
}
</style>
</head>
<body>
<!-- 3种定位方式:
1.相对定位:position:relative;
2.绝对定位:position:absolute;
3.固定定位:position:fixed; -->
<div class="box"> </div>
</body>
</html>

相对定位

  相对定位隐藏导航栏

 5.2 绝对定位

  特性:

    1.脱标

    2.做遮盖效果,提升层级  

    3.设置绝对定位后,不区分块级元素和行内元素,都可以设置宽高.

  绝对定位的参考点:设置绝对定位top属性时,是以页面左上角为参考点.(以盒子margin左上角0为参考点).

          设置绝对定位bottom属性时,是以首屏(首次打开页面的状态)的左下角为参考点.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>绝对定位参考点</title>
<style type="text/css">
/* *{
padding: 0;
margin: 0;
} */
body{
width: 99%;
height: 10000px;
border: 5px solid green;
}
.box{
width: 200px;
height: 200px;
background-color: red;
/* 绝对定位: 设置top属性的时候,是以页面的左上角(浏览器)为参考点.(以盒子margin左上角0为参考点); */
position: absolute;
top: 13px;
left: 13px;
/* bottom: 以首屏(首次打开页面)的左下角为参考点.; */
/* bottom: 100px; */
}
</style>
</head>
<body>
<div class="box"></div> </body>
</html>

绝对定位脱标参考点

  父相子绝:父辈元素设置相对定位,子元素又设置了绝对定位,那么子元素的参考点就是父辈元素左上角.父辈元素也可以是父辈的父辈,以此类推

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>绝对定位以盒子为参考点</title>
<style type="text/css">
*{
padding: 0;
margin: 0
}
.box{
width: 300px;
height: 300px;
border: 2px solid red;
margin: 200px;
/*父辈元素设置相对定位,子元素又设置了绝对定位,那么子元素的参考点就是父辈元素左上角.父辈元素也可以是父辈的父辈,以此类推 */
/*position: relative;*/
padding: 50px;
}
.box2{
width: 200px;
height: 200px;
background-color: gold;
/*这里设置相对定位后,p就会议box2的左上角为参考点*/
position: relative;
}
.box p{ width: 100px;
height: 100px;
background-color: green;
position: absolute;
top: 20px;
left: 20px; }
</style>
</head>
<body>
<div class="box">
<div class="box2">
<p></p> </div> </div> </body>
</html>

父相子绝案例

  父相子绝,父绝子绝,父固子绝都是以父辈元素的左上角为参考点.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>父绝子绝</title>
<style type="text/css">
*{
padding: 0;
margin: 0;
}
.box{
width: 400px;
height: 400px;
background-color: red;
border: 2px solid gold;
/*绝对定位*/
position:absolute;
/*固定定位*/
position: fixed;
top: 100px;
left: 100px;
}
.box p{
width: 200px;
height: 200px;
background-color: green;
position: absolute;
top: 100px;
left: 100px;
}
</style>
</head>
<body>
<!-- 父相子绝,父绝子绝,父固子绝,都是以父辈元素的左上角为参考点.
注意:父绝子绝在实战布局中,不使用.因为绝对定位会脱标,影响页面布局.相反的 父相子绝 经常使用在布局中.因为相对定位不脱标,子元素仅仅是在父辈元素内调整自己的位置信息.
-->
<div class="box">
<div class="box2">
<p></p>
</div>
</div>
</body>
</html>

父绝子绝,父固子绝案例

  如何让一个绝对定位的子盒子居中显示?

  子盒子设置绝对定位后,margin:0 aotu 就不起作用了.这时候要记下一个公式:left:50% margin-left:-(父元素宽度/2),一定要是个负数.

  

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>绝对定位的子盒子居中</title>
<style type="text/css">
*{
padding: 0;
margin: 0;
}
.box{
width: 100%;
height: 40px;
/*position: absolute;*/
background: black;
}
.box .c1{
width: 900px;
height: 40px;
background-color: pink;
margin: 0 auto;
/*position:absolute 绝对定位后.margin:0 auto 就不起作用了.如果想要让c1居中显示,那么c1的left等于父元素的50%.然后margin-left等于父元素的一半(是个负数)
*/
position: absolute;
/*left:50%,让子元素向左移动父元素一半的值*/
left: 50%;
margin-left: -480px;
}
</style>
</head>
<body>
<div class="box">
<div class="c1"></div>
</div>
</body>
</html>

子盒子居中显示

  5.3 固定定位

    固定当前的元素,不会随着页面的滚动而滚动.    

    特性:
    1.脱标
    2.提升层级
    3.固定不变

    常见用途:

     1.返回顶部按钮

     2.固定导航栏

       3.做小广告

    参考点: 设置top是以浏览器左上角为参考点.设置bottom是以浏览器左下角为参考点;

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>固定定位的使用</title>
<style type="text/css">
*{
padding: 0;
margin: 0;
}
p{
width: 100px;
height: 100px;
background-color: pink;
/* 固定定位: 固定当前的元素,不会随着页面的滚动而滚动
特性:
1.脱标
2.提升层级
3.固定不变
参考点: 设置top是以浏览器左上角为参考点.设置bottom是以浏览器左下角为参考点;
; */
position: fixed;
right: 100px;
top: 100px;
} </style>
</head>
<body>
<div>
<p></p>
<img src="./images/bojie.jpg" alt="">
<img src="./images/bojie.jpg" alt="">
<img src="./images/bojie.jpg" alt="">
<img src="./images/bojie.jpg" alt="">
<img src="./images/bojie.jpg" alt="">
<img src="./images/bojie.jpg" alt="">
</div> </body>
</html>

固定定位案例

上一篇:C++第三篇--程序结构


下一篇:ecshop不同样式文章页调用不同文章模板