css

2 CSS

基本语法结构

<head>
  <style type="text/css">
    选择器(即修饰对象){
      对象的属性1: 属性值1;
      对象的属性2: 属性值2;
    }
  </style>
</head>

1.标签选择器
	标签名{ 属性名1: 属性值1;
		属性名2: 属性值2;
	}
2.类选择器
类选择器是定义某类样式,让多个HTML 元素共享,这些样式是可以共享和代码复用的。
(1)定义样式:
	.类名{ 属性名1: 属性值1;
		属性名2: 属性值2;
	}
(2)应用样式:
	<标签名 class=“类名1 类名2">标签内容</标签名>
                   
注意:定义时类名前有个点号,应用样式时则不需要点号
                   
嵌套选择器:
	p{ }: 			为所有 p 元素指定一个样式。
	.marked{ }: 	为所有 class="marked" 的元素指定一个样式。
	.marked p{ }: 	为所有 class="marked" 元素内的 p 元素指定一个样式。
	p.marked{ }: 	为所有 class="marked" 的 p 元素指定一个样式。
3.ID选择器
ID选择器用于修饰某个指定的页面元素或区块,这些样式是对应ID标识的HTML 元素所独占的
	(1)定义样式
		#ID标识名{ 属性名1: 属性值1;
			属性名2: 属性值2;
		}
	(2)应用样式
        <标签名 id=“ID标识名">标签内容</标签名>      
注意:定义ID选择器时有个井号,但给HTML 标签设置ID 属性时不需要

4.伪类选择器
伪类选择元素基于的是当前元素处于的状态,或者说元素当前所具有的特性,而不是元素的id、class、属性等静态的标志。由于状态是动态变化的,所以一个元素达到一个特定状态时,它可能得到一个伪类的样式;当状态改变时,它又会失去这个样式。

a:link {color:#000000;}      /* 未访问链接*/
a:visited {color:#00FF00;}  /* 已访问链接 */
a:hover {color:#FF00FF;}  /* 鼠标移动到链接上 */
a:active {color:#0000FF;}  /* 鼠标点击时 */

##当设置为若干链路状态的样式,也有一些顺序规则:
a:hover 必须跟在 a:link 和 a:visited后面
a:active 必须跟在 a:hover后面

CSS 中规定样式的优先级规则为:
行内样式表> 内部样式表> 外部样式表
ID 选择器 > 类选择器 > 标签选择器


插入样式表

内联样式

​ 由于要将表现和内容混杂在一起,内联样式会损失掉样式表的许多优势。请慎用这种方法,例如当样式仅需要在一个元素上应用一次时。

要使用内联样式,你需要在相关的标签内使用样式(style)属性。Style 属性可以包含任何 CSS 属性。本例展示如何改变段落的颜色和字体。

<p style="color:sienna;font:large 楷体 ">这是一个段落。</p>

内部样式表

当单个文档需要特殊的样式时,就应该使用内部样式表。你可以使用 style 标签在文档头部定义内部样式表,就像这样:

<head> 
    <style type="text/css"> 
        hr {color:sienna;} 
        p {margin-left:20px;}
        body {background-image:url("images/back40.gif");}
    </style>
</head>

外部样式表

当样式需要应用于很多页面时,外部样式表将是理想的选择。在使用外部样式表的情况下,你可以通过改变一个文件来改变整个站点的外观。每个页面使用 标签链接到样式表。 标签在(文档的)头部:

1)链接外部样式表
<head> <link rel="stylesheet" type="text/css" href="mystyle.css"> </head>


2)外部样式表
	<style type="text/css">
	@import url("sheet1.css");
	@import url("sheet2.css"");
	</style>

浏览器会从文件 mystyle.css 中读到样式声明,并根据它来格式文档。

外部样式表可以在任何文本编辑器中进行编辑。文件不能包含任何的 html 标签。样式表应该以 .css 扩展名进行保存。下面是一个样式表文件的例子:

hr {color:sienna;} 
p {margin-left:20px;}
body {background-image:url("/images/back40.gif");}

属性

文本和字体属性

属性 含义
color 颜色
line-height 行高(即行间距),常用取值为25px、28px
text-align 对齐方式,常用取值为left、 center、 right
letter-spacing 字符间距,常用取值3px、8px
text-decoration 文本修饰,line style color的复合,常用取值underline(下划线) line-through(删除线)none(默认)
font "font-style font-variant font-weight font-size/line-height font-family" font-size和font-family的值是必需的。
font-family font-size和font-family的值是必需的。字体 宋体、隶书、楷体、黑体
font-size 大小 small、medium、large
font-weight 粗细 normal bold bolder lighter 100~900
font-style 正常、斜体 normal、italic

背景属性

属性 含义
background-color 背景颜色
background-image 背景图片 值: url(“路径”)
background-repeat 背景平铺方式 no-repeat、 repeat-x、 repeat-y、 repeat()
background-attachment scroll背景图片随着页面的滚动而滚动,默认的fixed背景图片不随着页面的滚动
background-position 偏移位置 x%,y% or x,y or left right top bottom

列表属性

属性 含义
list-style-type none disc实心圆默认 circle圈 square实心方块 decimal数字
list-style-position inside、outside(默认)
list-style-image url(“路径”)
list-style 按 type position image 顺序,可以缺省

盒子属性

属性 含义
margin 设置外边距,顺序是上下左右,可以缺省,值可以是 px、%,auto(默认)
margin-(top|right|bottom|left) 单独设置一边的外边距
border-color 属性用于设置边框的颜色
border-width 可以指定长度值,也可用thick 、medium(默认值) 和 thin。
border-style none无 dashed虚线 solid实线 double双线 inset陷入 outset突出 可以单独设置某一边 例 border-top-style:dashed
border-radius 设置外边框圆角。使用一个半径时确定一个圆形,使用两个半径时确定一个椭圆。
border 按width style color顺序设置复合边框,可缺省。
outline-width outline-style outline-color outline 元素周围轮廓线
padding 设置内边距,顺序是上下左右,可以缺省,值可以是 px、%,auto(默认)
padding-(top|right|bottom|left) 单独设置一边的内边距

尺寸

属性 含义
height 元素高度,该属性不包括填充,边框和页边距 值:auto, px, %
width
line-height 行高
max-height 最大高度
cursor 移动到该项时光标的形状:url auto crosshair十字 pointer手 move移动 text文本 wait沙漏 help问号
overflow 设置当元素的内容溢出其区域时发生的事情。auto hidden scroll visible
display none此元素不会被显示且不占空间 block显示为块级元素,此元素前后会带有换行符。inline显示为内联元素,元素前后没有换行符。

请把鼠标移动到单词上,可以看到鼠标指针发生变化:

auto
crosshair
default

e-resize

help

move

n-resize

ne-resize

nw-resize

pointer

progress

s-resize

se-resize

sw-resize

text

w-resize

wait

DIV+CSS布局

属性 含义
float 指定一个盒子(元素)是否可以浮动。值: left right none
clear 如果前一个元素存在左浮动或右浮动,则换行以区隔 值: right left both none

浮动的三大显著特征:

  1. DIV块元素失去“块状”换行显示特征,变为行内元素
  2. 紧贴上一个浮动元素(同方向)或父级元素的边框,如宽度不够将换行显示
  3. 占据行内元素的空间,导致行内元素围绕显示

div设置width height (%)嵌套 进行布局

三行两列模式

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>div+css布局</title>
		<style type="text/css">
			#bg{width: 100%;height: 1000px;}/*大容器*/
			#header{
				width: 100%;height: 20%;background:yellowgreen;
			}
			#main{
				width: 100%;height: 70%;
			}
			#left{
				width: 20%;height: 100%;background:brown;float: left;
			}
			#right{
				width: 80%;height: 100%;background:yellow;float: left;
			}
			#footer{
				width: 100%;height: 10%;background:black;clear: both;
			}
		</style>
	</head>
	<body>
		<div id="bg">
			<div id="header"></div>
			<div id="main">
				<div id="left"></div>
				<div id="right"></div>
			</div>
			<div id="footer"></div>	
		</div>
	</body>
</html>

posted @ 2022-03-05 18:06  awei666  阅读(33)  评论(0编辑  收藏  举报