前端基础 Day03
1. 什么是CSS
一、 如何学习:
-
CSS是什么
-
CSS怎么用(快速入门)
-
CSS选择器(重点+难点)
-
美化网页(文字,阴影,超链接,列表,渐变...)
-
盒子模型
-
浮动
-
定位
-
网页动画(特效)
二、 是什么
Cascading Style sheet 层叠级联样式表
CSS:表现(美化网页)
字体、颜色、边距、高度、宽度、背景图片、网页定位、网页浮动...
三、 发展史:
CSS1.0
CSS2.0 DIV(块) + CSS,HTML 与 CSS 结构分离的思想,网页变得简单,SEO
CSS3.0 圆角,阴影,动画.... 浏览器兼容性
四、 快速入门
style
练习格式:

基本入门:
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 7 <!--规范,<style>可以编写css的代码,每一个声明,最好使用分号结尾 8 语法: 9 选择器{ 10 声明1; 11 声明2; 12 声明3; 13 } 14 --> 15 <style> 16 h1{ 17 color: blue; 18 } 19 </style> 20 </head> 21 <body> 22 23 <h1>我是标题</h1> 24 </body> 25 </html>
外部引用(建议使用)

五、 CSS的优势
-
内容和表现分离
-
网页结构表现统一,可以实现复用
-
样式十分丰富
-
建议使用独立于html 的 css 文件
-
利于SEO,容易被搜索引擎收录!
六、 CSS的3种导入方式
内部、外部、行内
优先级:就近原则
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 7 <style> 8 <!--内部样式--> 9 h1{ 10 color: green; 11 } 12 </style> 13 <!--外部样式--> 14 <link rel="stylesheet" href="css/style.css"> 15 </head> 16 <body> 17 <!--行内样式:在标签元素种,编写一个style属性,编写样式即可--> 18 <h1 style="color:red;">我是标题</h1> 19 20 </body> 21 </html>
扩展:外部样式两种写法
链接式:html
<link rel="stylesheet" href="css/style.css">
导入式:css2.1 是特有的
<style> @import "css/style.css"; </style>
2. 选择器(一、四重要)
作用:选择页面上的某一个或者某一类元素
一、 基本选择器**
-
标签选择器 标签{} 选择一类标签
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 7 <style> 8 /*标签选择器会选择页面上所有的标签*/ 9 h1{ 10 color: #1ea36e; 11 background: #e2b192; 12 border-radius:24px; 13 } 14 p{ 15 font-size: 80px; 16 } 17 </style> 18 </head> 19 <body> 20 <h1>好好学Java</h1> 21 <h1>好好学Java</h1> 22 <p>刚把爹哦</p> 23 </body> 24 </html>

-
类选择器 .class的名称{} 选择所有class一致的标签,跨标签
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 7 <style> 8 /*类选择器的格式 .class的名称{} 9 好处,可以多个标签归类,是同一个class 10 */ 11 .haha{ 12 color: #f6dcff; 13 } 14 .hahaha{ 15 color: #edffae; 16 } 17 </style> 18 </head> 19 <body> 20 21 <h1 class="haha">标题1</h1> 22 <h1 class="hahaha">标题2</h1> 23 <h1>标题3</h1> 24 25 <p class="haha">p标签</p> 26 </body> 27 </html>

-
ID选择器 #id名称{} 唯一
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 7 <style> 8 /*id选择器 :id必须保证全局唯一!!! 9 #id名称{} 10 */ 11 #haha{ 12 color: red; 13 } 14 .style1{ 15 color: #4ccfff; 16 } 17 h1{ 18 color: green; 19 } 20 </style> 21 </head> 22 <body> 23 24 <h1 id="haha" class="style1">标题1</h1> 25 <h1 class="style1">标题2</h1> 26 <h1 class="style1">标题3</h1> 27 <h1>标题4</h1> 28 <h1>标题5</h1> 29 30 </body> 31 </html>

优先级:不遵循就近原则,固定的
id> class > 标签选择器
二、 层次选择器 (定位的时候比较方便)
1 <p>p1</p> 2 <p>p2</p> 3 <p>p3</p> 4 <ul> 5 <li> 6 <p>p4</p> 7 </li> 8 <li> 9 <p>p5</p> 10 </li> 11 <li> 12 <p>p6</p> 13 </li> 14 </ul>
-
后代选择器:在某个元素的后面 祖爷爷 爷爷 爸爸 你
/*后代选择器*/ body p{ background: green; }

-
子选择器 一代 儿子
body>p{ background: aquamarine; }

-
相邻兄弟选择器 同辈(向下)
.active +p{ background: #ff8cec; }
1 <p class="active">p1</p> 2 <p>p2</p> 3 <p>p3</p> 4 <ul> 5 <li> 6 <p>p4</p> 7 </li> 8 <li> 9 <p>p5</p> 10 </li> 11 <li> 12 <p>p6</p> 13 </li> 14 </ul> 15 <p class="active">p7</p> 16 <p>p8</p>

-
通用兄弟选择器 当前选中元素向下所有兄弟元素
.active~p{ background: blueviolet; }
代码同上

三、结构伪类选择器
结构: 定位元素 主要记住1、2 ,第4个比第3个要好用
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 <!--避免使用class选择器--> 7 <style> 8 9 /*ul的第一个元素*/ 10 ul li:first-child{ 11 background: aquamarine; 12 } 13 14 /*ul的最后一个元素*/ 15 ul li:last-child{ 16 background: red; 17 } 18 /*选中p1:定位到父元素,选择当前的第一个元素 19 选中当前p元素的父级元素,选中父级元素的第一个,并且是当前元素才生效! 20 */ 21 p:nth-child(2){ 22 background: bisque; 23 } 24 /*选中父元素,下的p元素的第二个,类型*/ 25 p:nth-of-type(2){ 26 background: yellow; 27 } 28 </style> 29 </head> 30 <body> 31 <h1>h1</h1> 32 <p>p1</p> 33 <p>p2</p> 34 <p>p3</p> 35 <ul> 36 <li>li1</li> 37 <li>li2</li> 38 <li>li3</li> 39 </ul> 40 </body> 41 </html>

伪类: hover 鼠标悬停
1 </style> 2 a:hover{ 3 background: green; 4 } 5 </style> 6 </head> 7 <body> 8 <a href="">123321</a>

四、属性选择器(常用) 好用!把id和class结合了
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 7 <style> 8 .demo a{ 9 float: left; 10 display: block; 11 height: 50px; 12 width: 50px; 13 border-radius: 10px; 14 background: aqua; 15 text-align: center; 16 color: coral; 17 text-decoration: none; 18 margin-right: 5px; 19 font: bold 20px Arial; 20 line-height: 50px; 21 } 22 </style> 23 </head> 24 <body> 25 26 <p class="demo"> 27 <a href="http://www.baidu.com/" class="links item first" id="first">1</a> 28 <a href="http://www.baidu.com/" class="links item active" target="_blank" title="test">2</a> 29 <a href="images/123.html" class="links item active">3</a> 30 <a href="images/123.png" class="links item">4</a> 31 <a href="images/123.jpg" class="links item">5</a> 32 <a href=abc"">6</a> 33 <a href="/a.pdf">7</a> 34 <a href="/abc.pdf">8</a> 35 <a href="/abc.doc">8</a> 36 <a href="/abcd.doc" class="links item last">8</a> 37 38 </p> 39 </body> 40 </html>

属性选择器格式:
1 /*属性名, 属性名=属性值(正则) 2 = 绝对等于 3 *= 包含 4 ^= 以这个开头 5 $= 以这个结尾 6 */ 7 /*存在id属性的元素 a[]{} */ 8 a[id]{ 9 background: yellow; 10 } 11 a[id=first]{ 12 background: beige; 13 }

/*class中有links的元素*/ a[class*="links"]{ background: yellow; }

/*选中href中以http开头的元素*/ a[href^=http]{ background:yellowgreen; }

a[href$=pdf]{ background: crimson; }


浙公网安备 33010602011771号