一、CSS简介 1.什么CSS 层叠式样式表(Cascading Style Sheets) CSS是对HTML进行修饰的语言 层叠式:层层覆盖叠加 用CSS修饰HTML有优先级 样式表 :CSS属性样式的集合 2.CSS作用 A.可以对HTML进行修饰 使得HTML更加美观 B.提高样式表的复用率 C.文本和样式完全分离 3.CSS引用方式及书写规范 1)内嵌式 把CSS样式嵌入到HTML标签中,使用一次 语法: <div style="color: red; font-size:14px; ">我的第一个CSS样式</div> 语法解析: 1.使用style属性将将CSS嵌入到HTML标签中 2.属性值的书写规范: 属性:属性值 3.多个属性使用分号来分割 不建议使用:违背w3c标准 2)内部式 在head标签中 使用style进行引用 本页面可以使用该样式 语法: <style type="text/css"> div{ color: red; font-size: 14px; } </style> 语法解析: 1.使用style标签引入CSS样式 <style type="text/css"> 属性type:告知浏览器使用CSS解析器解析 2.属性值的书写规范: 属性:属性值 3.多个属性使用分号来分割 3)外部式 将CSS提取出来形成CSS文件 谁使用谁调用 多个页面可以使用同一个样式 链接式 语法: <link href="demo1.css" type="text/css" rel="stylesheet"/> 语法解析: 1)创建一个CSS文件,将CSS属性写入到CSS文件中 2)在head标签中使用link标签作引入 <link href="demo1.css" type="text/css" rel="stylesheet"/> rel:引入文件与HTML的关系 type:告知浏览器采用CSS解析器解析 href:CSS文件地址 3)属性值的书写规范: 属性:属性值 4)多个属性使用分号来分割 导入式 语法: <style type="text/css"> @import url("demo1.css"); </style> 链接式与导入式区别 1)link所有浏览器都支持 部分低版本IE浏览器不支持 2)先加载HTML文件再加载CSS样式 3)import不支持js(javascript)动态修改
二、CSS选择器* 1.基本选择器 A.标签选择器 语法: HTML标签{CSS样式} 案例: <style type="text/css"> span{ color: red; font-size: 14px; } </style> <span>我的第一个CSS样式</span> B.id选择器 语法: #选择器名称{CSS样式} 案例: <style type="text/css"> #d1{ color: red; font-size: 14px; } #d2{ color: yellow; font-size: 14px; } </style>
<div id="d1">我的第一个CSS样式</div> <div id="d2">我的第一个CSS样式</div> C.class选择器 语法: .选择器名称{CSS样式} 案例: <style type="text/css"> .style1{ background-color: red; } .style2{ background-color: green; } </style> <div class="style1">我的第一个CSS样式</div> <div >我的第一个CSS样式</div> <div class="style2">我的第一个CSS样式</div> 优先级: id选择器>class选择器>标签选择器 2.属性选择器 语法: 基本选择器[属性='属性值']{CSS样式} 案例: <style type="text/css"> input[type='text']{ background-color: red;} input[type='password']{ background-color: yellow;} </style> username:<input type="text" name="username"/><br/> password:<input type="password" name="password"/><br/> birthday:<input type="date" name="birthday"/><br/> 3.伪元素选择器 a标签的伪元素选择器 语法: 静止状态 a:link{CSS样式} 悬浮状态 a:hover{CSS样式} 触发状态 a:active{CSS样式} 完成状态 a:visited{CSS样式} 案例: <style type="text/css"> a:link{ color: red;} a:hover{ color: blue; font-size: 28px;} a:active{ color: black;} a:visited{ color: green;} </style> <a href="#">点击我吧</a> 4.层级选择器 语法: 父级选择器 子级选择器{CSS样式} 案例: <style type="text/css"> #d1 .dd2 span{ background-color: red;} </style>
<div id="d1"> <div class="dd1"><span>div1</span></div> <div class="dd2"><span>div2</span></div> </div> <div id="d2"> <div class="dd1"><span>div1</span></div> <div class="dd2"><span>div2</span></div> </div>
三、CSS样式* 1.字体属性 font-size:字体大小 font-family:字体字型 案例: <style type="text/css"> span{ font-size: 100px; color: red; font-family: 黑体; font-style: italic; font-weight: bolder; } </style> <span>HELLOCSS</span> <em>HELLOCSS</em> <b>HELLOCSS</b> 2.文本属性 color:字体颜色 text-decoration:下划线 text-align:对齐方式 属性值:left center right 案例: <style type="text/css"> div{ color: blue; text-decoration: underline; cursor: pointer; } a{ text-decoration: none;} a:link{ color: black; cursor: text;} /* cursor: pointer; 小手 cursor: text; 文本 cursor: wait; cursor: help; cursor: crosshair; */ </style> <body> <div>HELLOCSS</div> <a href="#">点击我吧</a> </body> 3.背景属性 background-color:背景颜色 background-image:背景图片 属性值 url("图片地址"); background-repeat:平铺方式 属性值: repeat:横纵平铺 repeat-x:横向平铺 repeat-y:纵向平铺 no-repeat:不平铺 案例: <style type="text/css"> body{ /* background-color: black; background-image: url("images/dog.gif"); background-repeat: no-repeat; */ background: url("images/dog.gif") no-repeat black; background-size: 80px 60px; } </style> 4.列表属性 list-style-type:列表前可以加小点 list-style-image:列表前加图片 案例: <style type="text/css"> ul{ /* list-style-image: url("images/forward.gif"); */ /* list-style-type: decimal-leading-zero; */ /* list-style-position: outside; */ list-style: none; } </style> </head> <body> <ul> <li>香蕉</li> <li>苹果</li> <li>鸭梨</li> </ul> </body> 5.尺寸属性 width:宽度 height:高度 案例: <style type="text/css"> #d1{ background-color: red; width: 100px; height: 100px; } span{ background-color: blue; } </style>
<body> <div id="d1">div1</div> <div>div2</div> <span>span</span> </body> 6.显示属性 display 属性值: none;不显示 不占位置 block(块级显示) inline(行级显示) 案例: <style type="text/css"> a:hover #d1{ width: 200px; height: 200px; border: 1px solid red; display: block; } </style> <body> <a href="#">点击我吧<div id="d1"></div></a> </body> 7.浮动属性 float: 属性值: left right clear: 属性值:left right both 四、盒子模型 边框 border: border-color:边框颜色 border-style:边框样式 border-width:边框宽度 border-top:上边框 border-left:左边框 border-bottom:下边框 border-right:右边框 border:1px 2px 3px 4x; 上 右下左 border:1px 2px; 上下 左右 border:1px 2px 3px; 上1 左右2 下3 border:1px; 内边距 padding:内边距 padding-top:上内边距 padding-left:左内边距 padding-right:右内边距 padding-bottom:下内边距 外边距 margin:外边距 margin-top:上外边距 margin-left:左外边距 margin-right:右外边距 margin-bottom:下外边距 五、案例 div+css
