css基础使用

一、CSS介绍

CSS全称为: Cascading Style Sheets ,意为层叠样式表 ,与HTML相辅相成,实现网页的排版布局与样式美化

二、CSS使用方式

1. 行内样式/内联样式

  借助于style标签属性,为当前的元素添加样式声明

<标签名 style="样式声明">

  CSS样式声明 : 由CSS属性和值组成

示例:style="属性:值;属性:值;"

  常用CSS属性 : - 设置文本颜色 color:red; - 设置背景颜色 background-color:green; - 设置字体大小 font-size:32px;

2. 内嵌样式

  借助于style标签,在HTML文档中嵌入CSS样式代码,可以实现CSS样式与HTML标签之间的分离。同时需借助于CSS选择器到HTML 中匹配元素并应用样式

示例:
    <style>
        选择器{
            属性:值;
            属性:值;
        }
    </style>        

  选择器 : 通过标签名或者某些属性值到页面中选取相应的元素,为其应用样式

/*标签选择器 : 根据标签名匹配所有的该元素*/
p{
    color:red;
  }

3. 外链样式表

  创建外部样式表文件 后缀使用.css

  在HTML文件中使用标签引入外部样式表  <link rel="stylesheet" href="URL" type="text/css">

  样式表文件中借助选择器匹配元素应用样式

三、样式表特征

1. 层叠性

  多组CSS样式共同作用于一个元素

2. 继承性

  后代元素可以继承祖先元素中的某些样式 例 : 大部分的文本属性都可以被继承

3. 样式表的优先级

  优先级用来解决样式冲突问题。同一个元素的同一个样式(例如文本色),在不同地方多次进行设置,最终选用哪一种样式?此时哪一种样式表的优先级高选用哪一种。

- 行内样式的优先级最高

- 文档内嵌与外链样式表,优先级一致,看代码书写顺序,后来者居上

- 浏览器默认样式和继承样式优先级较低

 1 <!doctype html>
 2 <html lang="en">
 3 <head>
 4     <meta charset="UTF-8">
 5     <meta name="viewport" content="width=device-width, user-scalable=no, initial-        scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
 6     <meta http-equiv="X-UA-Compatible" content="ie=edge">
 7     <title>Document</title>
 8     <!--引入外部样式表-->
 9     <link rel="stylesheet" href="index.css">
10     <style>
11         /*内嵌样式,借助style标签书写样式声明,
12         实现样式与结构的分离*/
13         /*使用选择器匹配文档元素,为其应用样式*/
14         /*标签选择器:根据标签名匹配元素应用样式*/
15         h1{
16             background:green;
17         }
18         span{
19             color:orange;
20         }
21         span{
22             color:pink;
23         }
24     </style>
25 </head>
26 <body>
27     <!--行内样式,借助style标签属性设置样式规则-->
28     <!--CSS样式声明 属性名:属性值;-->
29     <h1 style="font-size:16px;color:red;">人生苦短</h1>
30     <h1 style="font-size:16px;color:red;">我学python</h1>
31     <h2>
32         测试<span>python</span>
33     </h2>
34     <span>python</span>
35     <div style="color:green;">
36         <p style="color:blue;">
37             <span style="color:gray;">子元素可以继承父元素或祖先元素的文本样式</span>
38         </p>
39     </div>
40 </body>

示例

四、CSS 选择器

1. 作用:匹配文档中的某些元素为其应用样式

2. 分类 :

  (1) 标签选择器:根据标签名匹配文档中所有该元素

    语法 :标签名{

          属性:值;


        }

 1 /*根据标签名匹配所有相应元素应用样式*/
 2 <style>
 3     h1{
 4         color:green;
 5     }
 6 </style>
 7 --------------------------------
 8 <body>
 9     <h1>人生苦短,我学python</h1>
10 </body>

标签选择器演示

  (2)id选择器:根据元素的 id 属性值匹配文档中惟一的元素,id具有唯一性,不能重复使用

    语法 :#id属性值{

  


        }

    注意 : id属性值自定义,可以由数字,字母,下划线,- 组成,不能以数字开头; 尽量见名知意,多个单词组成时,可以使用连接符,下划线,小驼峰表示

 1 /*根据元素的id属性值匹配(id选择器)*/
 2 <style>
 3     #d1{
 4         /*匹配id为"d1"的元素*/
 5         font-size:40px;
 6     }
 7     #d2{
 8         font-size:52px;
 9     }
10 </style>
11 ---------------------------------
12 <body>
13     <h1 id="d1">人生苦短</h1>
14     <h1 id="d2">我学python</h1>
15 </body>        

id选择器演示

  (3)class选择器/类选择器:根据元素的class属性值匹配相应的元素,class属性值可以重复使用,实现样式的复用

    语法 :.class属性值 {

     


          }

     特殊用法 : 1. 类选择器与其他选择器结合使用 注意标签与类选择器结合时,标签在前,类选择器在后  例 : a.c1{ }

         2. class属性值可以写多个,共同应用类选择器的样式    例 : .c1{ } .

                                      c2{ }

                                       <p class="c1 c2"></p>

 1 <style>
 2 /*类选择器:根据元素的class属性值匹配到相应元素*/
 3     .c1{
 4         background: orange;
 5     }
 6     .c2{
 7         width:200px;
 8     }
 9     /*组合选择器*/
10     h2.c1{
11         /*匹配类名为c1的h2元素*/
12         height:200px;
13     }
14 </style>
15 ----------------------------
16 <body>
17     <h1 class="c1 c2">人生苦短</h1>
18     <h2 class="c1">我学python</h2>
19 </body>

class选择器/类选择器演示

  (4)群组选择器:为一组元素统一设置样式

    语法 : selector1,selector2,selector3{    

       

       }

 1 <style>
 2     /*群组选择器:将选择器组合起来,统一为元素设置样式*/
 3     h2,h3,h4{
 4         font-size:20px;
 5     }
 6 </style>
 7 ----------------------
 8 <body>
 9     <h2>python</h2>
10     <h3>python</h3>
11     <h4>python</h4>
12 </body>

群组选择器演示

  (5)后代选择器:匹配满足选择器的所有后代元素(包含直接子元素和间接子元素)

    语法 :selector1 selector2{


        }

     匹配selector1中所有满足selector2的后代元素

 1 /*后代选择器:匹配所有满足选择器的后代元素*/
 2 div span{
 3     color:red;
 4 }
 5 -----------------
 6 <body>
 7     <div>
 8         <span>div->span</span>
 9             <p>
10                 <span>div->p->span</span>
11             </p>
12     </div>
13 </body>
14 ===========================
15 div->span
16 div->p->span
17 div里面只要出现span,都算后代元素   

后代选择器演示

  (6)子代选择器:匹配满足选择器的所有直接子元素

    语法 :selector1>selector2{

      }

 1 /*子代选择器:匹配所有满足选择器的直接后代*/
 2 div>span{
 3     background:red;
 4 }
 5 ---------------------------
 6 <body>
 7     <div>
 8         <span>div->span</span>
 9             <p>
10                 <span>div->p->span</span>
11                     </p>
12     </div>
13 </body>
14 ===============================
15 div->span    

子代选择器演示

  (7) 伪类选择器:为元素的不同状态分别设置样式,必须与基础选择器结合使用

  分类 :

  :link 超链接访问前的状态

  :visited 超链接访问后的状态

  :hover 鼠标滑过时的状态

  :active 鼠标点按不抬起时的状态(激活)

  :focus 焦点状态(文本框被编辑时就称为获取焦点)

使用 :
a:link{
}
a:visited{
}
.c1:hover{
}

  注意 :

    1.超链接如果需要为四种状态分别设置样式,必须按照以下顺序书写

:link
:visited
:hover
:active

    2.超链接常用设置 :

a{
    /*统一设置超链接默认样式(不分状态)*/
}
a:hover{
    /*鼠标滑过时改样式*/
}

3. 选择器的优先级

  使用选择器为元素设置样式,发生样式冲突时,主要看选择器的权重,权重越大,优先级越高

选择器 权重
标签选择器 1
(伪)类选择器 10
id选择器 100
行内样式 1000

  复杂选择器(后代,子代,伪类)最终的权重为各个选择器权重值之和,群组选择器权重以每个选择器单独的权重为准,不进行相加计算

/*群组选择器之间互相独立,不影响优先级*/
body,h1,p{ /*标签选择器权重为 1 */
    color:red;
}
.c1 a{ /*当前组合选择器权重为 10+1  */
     color:green;
}
#d1>.c2{ /*当前组合选择器权重为 100+10 */
    color:blue;
}

  1 <!doctype html>
  2 <html lang="en">
  3 <head>
  4     <meta charset="UTF-8">
  5     <meta name="viewport"
  6           content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
  7     <meta http-equiv="X-UA-Compatible" content="ie=edge">
  8     <title>Document</title>
  9     <style>
 10         /*1.根据标签名匹配所有相应元素应用样式*/
 11         h1{
 12             color:green;
 13         }
 14         /*2.根据元素的id属性值匹配(id选择器)*/
 15         #d1{
 16             /*匹配id为"d1"的元素*/
 17             font-size:40px;
 18         }
 19         #d2{
 20             font-size:42px;
 21         }
 22         /*3.类选择器:根据元素的class属性值匹配到相应元素*/
 23         .c1{
 24            background: orange;
 25         }
 26         .c2{
 27             width:200px;
 28         }
 29         /*组合选择器*/
 30         h2.c1{
 31             /*匹配类名为c1的h2元素*/
 32             height:200px;
 33         }
 34         /*4.群组选择器:将选择器组合起来,统一为元素设置样式*/
 35         h2,h3,h4{
 36             font-size:20px;
 37         }
 38         #d1,.c1{}
 39         /*5.后代选择器:匹配所有满足选择器的后代元素*/
 40         div span{
 41             color:red;
 42         }
 43         /*6.子代选择器:匹配所有满足选择器的直接后代*/
 44         div>span{
 45             background:cyan;
 46         }
 47         /*7.伪类选择器:为元素的不同状态分别设置样式,
 48         需要和基础选择器结合使用*/
 49         /*
 50         超链接伪类:
 51             :link(超链接访问前的状态)
 52             :visited(超链接访问后的状态)
 53         动态伪类:
 54             :hover(鼠标悬停时的状态)
 55             :active(激活状态,鼠标点按时的状态)
 56             :focus(表单控件的焦点状态,输入框的编辑状态)
 57         */
 58         /*
 59         a:link{
 60             color:black;
 61         }
 62         a:visited{
 63             color:gray;
 64         }
 65         a:hover{
 66             font-size:28px;
 67         }
 68         a:active{
 69             background:orange;
 70         }
 71         */
 72         /*
 73             1.统一设置超链接四种状态下的样式
 74             2.单独设置鼠标悬停时的样式
 75         */
 76         a{
 77             color:black;
 78             /*取消超链接默认下划线*/
 79             text-decoration:none;
 80         }
 81         a:hover{
 82             color:orange;
 83         }
 84         /*创建h5标签,设置初始尺寸和背景颜色;
 85         鼠标悬停时修改背景颜色*/
 86         h5{
 87             width:200px;
 88             height:200px;
 89             background:pink;
 90         }
 91         h5:hover{
 92             background:green;
 93         }
 94         /*取消表单控件在焦点状态下的轮廓线*/
 95         input:focus{
 96             outline:none;
 97         }
 98
 99     </style>
100 </head>
101 <body>
102     <input type="text">
103     <h5></h5>
104     <a href="01_form.html">表单应用</a>
105     <div>
106         <span>div->span</span>
107         <p>
108             <span>div->p->span</span>
109         </p>
110     </div>
111
112     <!--基础选择器:标签,id,类-->
113     <!--class属性可以取多个值,使用空格隔开-->
114     <h1 id="d2" class="c1 c2">老王</h1>
115     <h1 id="d3" class="c1">老张</h1>
116     <h1 id="d1">老李</h1>
117     <h2 class="c1 c2">老赵</h2>
118     <h2>python1</h2>
119     <h3>python2</h3>
120     <h4>python3</h4>
121
122 </body>
123 </html>

练习

五、标签分类及嵌套

1. 块元素

  独占一行,不与元素共行;可以手动设置宽高,默认宽度与与父元素保持一致 例 : body div h1~h6 p ul ol li form, table(默认尺寸由内容决定)

2. 行内元素

  可以与其他元素共行显示;不能手动设置宽高,尺寸由内容决定 例 : span label b strong i s u sub sup a

3. 行内块元素

  可以与其他元素共行显示,又能手动调整宽高 例 : img input button (表单控件)

4. 嵌套原则

  块元素中可以嵌套任意类型的元素 p元素除外,段落标签只能嵌套行内元素,不能嵌套块元素

  行内元素中最好只嵌套行内或行内块元素

转换元素的类型 display取值:block(块元素)  inline(行内元素)  inline-block(行内块元素)  none(隐藏)

?
?
? ? ?
? ?

原文地址:https://www.cnblogs.com/maplethefox/p/11167402.html

时间: 2024-10-03 22:54:45

css基础使用的相关文章

蓝鸥零基础学习HTML5—html+css基础

蓝鸥零基础学习HTML5-html+css基础 一.课程目标 1.了解前端开发职位:2.掌握常用标签以及语义及用法:3.掌握常用css的特性,掌握基础布局技巧:4.掌握整站规划概念. 二.适用人群 零基础积极学习html5者 三.课程简介 本课程主要讲解了 html+css的基础知识,包括html模板.标签.css基础样式.布局.表格表单.整站等等,是进行前端开发的基础.Html+css是前端开发的基础,大部分前端开发工程都需要从html+css布局开始,html+css的基础非常重要,是前端开

HTML&CSS基础学习笔记8-预格式文本

<pre>标签的主要作用是预格式化文本.被包围在 pre 标签中的文本通常会保留空格和换行符.而文本也会呈现为等宽字体. <pre>标签的一个常见应用就是用来表示计算机的源代码.当然你也可以在你需要在网页中预显示格式时使用它. 会使你的文本换行的标签(例如<h>.<p>)绝不能包含在 <pre> 所定义的块里.尽管有些浏览器会把段落结束标签解释为简单地换行,但是这种行为在所有浏览器上并不都是一样的. 更多学习内容,就在码芽网http://www.

前端知识学习一 :CSS基础

一.CSS概述 css指的是层叠样式表,样式定义如何显示HTML元素,样式通常存储在样式表中, 把样式添加到HTML4.0中,是为了解决内容和表现分离的问题.外部样式表通常存储在css文件     中.多个样式定义可层叠为一. 二.层叠次序 一般而言,所有的样式都会根据下面的规则层叠于一个新的虚拟样式表中,其中4拥有最高的优先权. 1.浏览器的缺省设置 2.外部样式表(通过引入的外部.css文件) 3.内部样式表(位于<head>标签内部) 4.内联样式表(在HTML元素内部) 因此属性的优先

Form标签+Css基础

一.Form表单标签 <form action="" method=""></form> 表单就是用来将用户的信息提交到服务器,服务器会将信息存储或者根据信息查询数据(增删改查). 表单中所有的内容都要写在form标签中. <input type="text" value="哈哈哈哈" placeholder="请输入用户名"> Input文本输入框,type类型为tex

HTML&CSS基础学习笔记13—无序列表

无序列表 有时我们的工作繁忙,杂事很多,怕忘记,就会把事情一件件列出来,防止忘记. 它们的排列顺序对于我们来说并不重要,可以随意调换,我们将它称为无序列表,HTML里用<ul>标签来表示无序列表,列表里的项目则用<li>标签来表示: 1 2 3 4 5 <ul>     <li></li>     <li></li>     ... </ul> 看一段实例代码: 对于的浏览器显示结果是这样的: 更多内容学习,请

前端开发:css基础知识之盒模型以及浮动布局。

前端开发:css基础知识之盒模型以及浮动布局 前言 楼主的蛮多朋友最近都在学习html5,他们都会问到同一个问题 浮动是什么东西?  为什么这个浮动没有效果?  这个问题楼主已经回答了n遍.今天则是把它写到我的博客中,想知道自己过来翻就好啦 ^_^  下面楼主把当前的自己对css的基础认知一一给大家道来...... 盒模型 谈到盒模型,有经验的小伙伴一定滚瓜烂熟,无非就是 内容(content).填充(padding).边框(border).边界(margin): 这些属性我们可以把它转移到我们

css基础学习

1.css基础语法 Css规则由两个主要的部分组成:选择器,声明. Selector{declaration1;...declarationN;} 如: H1 { font-size : 32px; color : blue } H1:选择器 Font-size:32px,color:blue:声明 2.css的三种定义方法 内联式: <h1 style="font-size:20px;color:red">内联式</h1> 嵌入式: <style typ

Html5开发——html+css基础二(个人博客一)

今天没有写完,而且写的还有点问题,所以今天就先不上传代码了(ps:快写完了才发现布局有问题,导致代码太多,感觉写的不是很好,所以今天先分析一下布局) 第一步先写一个大的div用来放ABC三个部分,这个大的div居中! 第二步分别写ABC三个部分,ABC三个部分分别使用浮动(float)来定位.A和B都各使用了一张非常小的图片,通过重复(repeat)属性生成A和B 第三步C部分分别写好3~16这几个模块,在通过组合利用浮动定位.分组如下: E:3 F:4.7.10.13 G:5.8.11.14

Html5开发——html+css基础一(百度首页)

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>百度</title> <style type="text/css"> *{margin: 0;padding: 0;} body{text-align: center;} .header{text-align: right;f

CSS基础教程 -- 媒体查询屏幕适配

响应式布局 Media Query 的使用方法 在上例中, 我们使用Media Queries来根据3种不同尺寸的窗口使用3种不同的样式.通过不同的媒体类型和条件定义样式表规则,媒体查询让CSS可以更精确作用于不同的媒体类型和同一媒体的不同条件.媒体查询的大部分媒体特性都接受min和max用于表达"大于或等于"和"小与或等于".如:width会有min-width和max-width媒体查询可以被用在CSS中的@media和@import规则上,也可以被用在HTML