标题:

1.scc概述

2.行内样式

3.内接样式

4.外接样式(链接式)    推荐使用

5.外接样式(导入式)

6.嵌套规则

7.css选择器

1.scc(Cascading Style Sheets)层叠样式表

  当前CSS前端分为三层:

  • HTML:超文本标记语言。从语义的角度描述页面结构

  • CSS:层叠样式表。从审美的角度负责页面样式

  • JS:JavaScript 。从交互的角度描述页面行为

css的作用其实就是给HTML页面标签添加各种样式,定义网页显示效果,将网页内容和显示样式进行分离

css缺点:兼容性不是太好;要求浏览器足够智能化;数据和显示没有分开;功能还不够强大

css有点:使数据和显示分开;降低网络流量;使整个网络视觉效果一样;降低了耦合性,提高了开发效率

2.行内样式

<div>
<p style="color: green">这是行内样式</p>
</div>

3.内接样式

<style type="text/css">
/*2.内接样式*/
p{
color: red;
font-size: 20px;
}
</style>

4.外接样式(链接式)    推荐使用

<link rel="stylesheet" type="text/css" href="./main.css">

建立一个index.css的文件,在主页面把它导入:

5.外接样式(导入式)

<style type="text/css">
@import url('./index.css');
</style>

将一个独立的.css文件引入HTML文件中,导入式使用CSS规则引入外部CSS文件,<style>标记也是写在<head>标记中,使用的语法如下:

6.嵌套规则 

  1. 有几个特殊的块级元素只能包含内联元素,不能包含块级元素。如h1,h2,h3,h4,h5,h6,p,dt

  2. li内可以包含div

  3. 块级元素与块级元素并列、内联元素与内联元素并列

7.css选择器

7.1基础选择器

“选择器”指明了{}中的“样式”的作用对象,也就是“样式”作用于网页中的哪些元素

  1.通用元素选择器 *: 所有的标签都变色

  2.标签选择器:匹配所有使用p标签的样式 p{color:red}

  3.id选择器:匹配指定的标签 #p2{color:red}

  4.class类选择器:谁指定class谁的变色,可选多个 .c1{color:red} 或者 div.c1{color:red}

<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<style>
/*标签选择器*/
/*所有标签是div的都变了*/
div{
font-family: 华文彩云;
} /*id选择器*/
/*给id='c2'的设置样式,id一般不常用。因为id是不能重复的。*/
#c2 p{
background-color: yellow;
font-size: 20px;
color: purple;
} /*calss类选择器*/
.a1{
color: red;
} /*通用元素选择器,整体改变*/
*{
background-color: pink;
color: green;
}
</style>
<body>
<div>
<div id="c2">
<p>根据c2 p的信息改变颜色</p>
<div class="a1">这里字体是红色</div>
</div>
</div>
<p>p2</p>
<div class="a1">666
<p>你好啊</p>
<h1>我是h1标签</h1>
</div>
</body>
</html>

7.2组合选择器

   1.后代选择器,使用空格表示后代选择器 (不分层级,只让p标签变色) .c2 p{color:red}
2.子代选择器,使用>表示子代选择器(只在儿子层找) .c2>p{color:red}
3.多元素选择器:同时匹配所有指定的元素,之间通过逗号隔开 .div,p{color:red}
                       或者                         .c2 .c3,.c2~.c3{
                           color: red;
                            background-color: green;
                           font-size: 15px;
                } 不常用
  3.毗邻选择器(紧挨着,找相邻的,只找下面的,不找上面的).c2+p{color:red}
  4.兄弟选择器:同一级别的,离得很近的.c2~p{color:red}
  5.多元素选择器: .c2 .c3,.c2~ .c3{ color:red }

多元素选择器的说明:

.a1 .a2, .a1~p{
color: blue;
font-size: 15px;
background-color: red;
}
#下面的两个就相当于上面的一个,用逗号隔开可以减少代码的重用
.a1 .a2{
color: blue;
font-size: 15px;
background-color: red;
}
.a1~p{
color: blue;
font-size: 15px;
background-color: red;
}

举例:

<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<title>组合选择器</title>
<style>
/*后代选择器(部分层级):选择所有类为a1的p标签*/
.a1 p{
background-color: blue;
} /*子代选择器*/
.c2>p{
color: green;
} /*毗邻选择器*/
.a2+p{
background-color: aquamarine;
} /*兄弟选择器:同一级别的,离得很近的*/
.a2~p{
background-color: brown;
} /*多元素选择器:同时匹配所有指定的元素*/
.div,p{
background-color: yellow;
} .a1 .a2, .a1~p{
color: purple;
font-size: 30px;
background-color: red;
}
</style>
</head>
<body>
<p>第六组</p>
<div class="a1">
<div class="a2">
<p>过去永远是画面</p>
<div class="c2">
<p>那片海</p>
</div> </div>
<p>666666666</p>
<h1 class="a2">第一章</h1>
<h2>第二章</h2>
</div>
<div class="a1">
<b>第三章</b>
<div class="a2">
<p>&reg;</p>
<b>singal</b>
</div>
</div>
<h5>第五组</h5>
<p>第六组</p>
</body>
</html>

7.3属性选择器

  属性选择器,字面意思就是根据标签中的属性,选中当前的标签。

  属性选择器仅限于在表单控件中

/*根据属性查找*/
/*[for]{
color: red;
}*/ /*找到for属性的等于username的元素 字体颜色设为红色*/
/*[for='username']{
color: yellow;
}*/ /*以....开头 ^*/
/*[for^='user']{
color: #008000;
}*/ /*以....结尾 $*/
/*[for$='vvip']{
color: red;
}*/ /*包含某元素的标签*/
/*[for*="vip"]{
color: #00BFFF;
}*/ /**/ /*指定单词的属性*/
label[for~='user1']{
color: red;
} input[type='text']{
background: red;
}

例:

<!DOCTYPE html>
<html>
<head>
<title></title> <style type="text/css">
label[for]{
color: red
}
input[type='text']{
background-color: red;
}
label[for^='vip']{
color: blue;
}
label[for*='i']{
color: yellow;
} </style>
</head>
<body> <!-- 属性选择器仅限于在表单控件中 -->
<form action=""> <label for="username">用户名</label>
<label for="vip">vip</label>
<label for="vivp">vvip</label> <input type="text">
<input type="password">
</form> </body>
</html>

7.4伪类选择器(和链接显示效果相关)

  一般用在超链接a标签中,专用于控制链接的显示效果

'''
a:link(没有接触过的链接),用于定义了链接的常规状态。 a:hover(鼠标放在链接上的状态),用于产生视觉效果。 a:visited(访问过的链接),用于阅读文章,能清楚的判断已经访问过的链接。 a:active(在链接上按下鼠标时的状态),用于表现鼠标按下时的链接状态。 伪类选择器 : 伪类指的是标签的不同状态: a ==> 点过状态 没有点过的状态 鼠标悬浮状态 激活状态 a:link {color: #FF0000} /* 未访问的链接 */ a:visited {color: #00FF00} /* 已访问的链接 */ a:hover {color: #FF00FF} /* 鼠标移动到链接上 */ a:active {color: #0000FF} /* 选定的链接 */ 格式: 标签:伪类名称{ css代码; } '''

例:

<!DOCTYPE html>
<html>
<head>
<title></title> <style type="text/css"> .box ul li.item a:link{
color: red;
}
.box ul li.item a:visited{
color: yellow;
}
.box ul li.item a:hover{
color: green;
font-size: 30px;
} .box ul li.item a:active{
color: pink;
background-color: #000; }
span{
display: block;
width: 200px;
height: 200px;
background-color: yellow;
}
span:hover{
color: red;
cursor: pointer;
background-color: #000;
font-size: 30px;
}
input{
width: 300px;
height: 200px;
}
ul>li{
/*width: 100px;
height: 70px;*/
background-color: red;
}
/*
行内标签:
a span
1、在一行内显示
2、不能设置宽高
3、宽高 是内容的宽高 行内块
1.在一行内显示
2.可以设置宽高 块级标签
div p ul li
1、独占一行
2、可以设置标签宽高
3、如果不设置宽高,默认body100%宽度
*/ </style>
</head>
<body>
<span>哈哈哈</span>
<input type="text">
<input type="password">
<ul>
<li>111</li>
</ul> <div class="box">
<ul>
<li class="item">
<a href="#">超链接</a>
</li>
</ul>
</div> </body>
</html>

7.5nth-child()选择器

  可以给指定的几行自定属性,如颜色

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
/*ul>li{
list-style: none;
}*/
ul li:first-child{
color: red;
}
ul li:last-child{
color: red;
}
ul li:nth-child(3){
color: blue;
}
/*设置为n全部为黄色*/
ul li:nth-child(n){
color: yellow;
}
/*3n+1的倍数行全部绿色*/
ul li:nth-child(3n+1){
color: green;
}
</style>
</head>
<body> <ul>
<li>冯波1</li>
<li>冯波2</li>
<li>冯波3</li>
<li>冯波4</li>
<li>冯波5</li>
<li>冯波6</li>
<li>冯波7</li>
<li>冯波8</li>
</ul> </body>
</html>

7.6 before,after伪类   (后面解决浮动问题需要用到这里的知识)

  :before      p:before       在每个<p>元素之前插入内容

   :after        p:after     在每个<p>元素之后插入内容

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
p{
font-size: 29px;
} p::first-letter{
color: red;
font-size: 30px; }
p::before{
content:'6666';
} /*这个非常重要,解决我们后面浮动产生的问题(布局)*/
p::after{ content: ".";
display: block;
height: 0;
visibility: hidden;
clear: both
}
</style>
</head>
<body> <p>董方方</p> </body>
</html>

前端css样式及选择器的更多相关文章

  1. 前端之css样式(选择器)。。。

    一.css概述 CSS是Cascading Style Sheets的简称,中文称为层叠样式表,对html标签的渲染和布局 CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明. 例如 二.c ...

  2. 前端基础之css样式(选择器)

    一.css概述 CSS是Cascading Style Sheets的简称,中文称为层叠样式表,对html标签的渲染和布局 CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明. 例如 二.c ...

  3. 前端之css样式(选择器)

    一.css概述 CSS是Cascading Style Sheets的简称,中文称为层叠样式表,对html标签的渲染和布局 CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明. 例如 二.c ...

  4. CSS样式表 选择器

    1.内联样式表 和HTML联合显示,控制精确,但是可重用性差,冗余较多. 例:<p style="font-size:14px;">内联样式表</p> &l ...

  5. HTML前端——CSS样式

    使用CSS样式的方式: HTML<!DOCTYPE> 声明标签 内链样式表<body style="background: green; margin: 0; paddin ...

  6. CSS样式与选择器

    CSS构造块的样式: 1.  h1{color:red;background-color:yellow} 其中:h1是选择器,花括号内是声明部分.多个声明之间用分号隔开. 2.为样式规则添加注释:/* ...

  7. 日常:css样式、选择器、个别知识点、数组array

    优先加入css引入文件定义,个别的在下面用style改变.(从左往右,从上往下)CSS样式表1.内联样式表(优先级最高)(改个别的)<div style="width:100px; h ...

  8. 前端-CSS样式

    一.CSS介绍 CSS(Cascading Style Sheet),全称层叠样式,定义如何显示HTML内的元素,浏览器读取HTML文件时,读取到CSS样式时根据CSS规则来对内容进行渲染 1.CSS ...

  9. day043 前端css样式

    标签嵌套规则 块级标签能够嵌套某些块级标签和内敛标签(行内标签) 内敛标签不能块级标签,只能嵌套内联标签 块级标签能够设置高度和宽度 内敛标签不能设置,设置没有效果 Css样式 高度宽度: Width ...

随机推荐

  1. 关于KEIL下的图形化显示和输出问题

    一 keil自带的虚拟示波器:只能在软件仿真下使用:右边的这个可以查看变量. 二 SEGGER的工具软件: 1 RTT:可以进行日志输出调试信息输出,需要配置工程,但不占用串口. 2 JSCOPE:可 ...

  2. sql查询约束

    写作业的时候发现书上竟然找不到查询约束的语句,百度搜了好久的资料,终于查询成功,在这里记录下来 主键约束 SELECT   tab.name AS [表名],   idx.name AS [主键名称] ...

  3. Java基础15-数组实例学生管理系统

    import java.util.Scanner; public class Student{ public static void main(String[] args){ Scanner in=n ...

  4. 设置webstorm的file watch 监视scss文件

    参考:http://blog.founddrama.net/2013/04/watching-compass-files-in-webstorm/ 上面红色划线部分. 特别注意arguments: 像 ...

  5. 【Linux】Debian 8 设置命令行界面的文本颜色

    平时我们操作的系统命令行界面文本默认黑底白字,有时候会看不惯这种全篇都是白色字符,这个时候可以通过改变PS1环境变量来改变文本颜色.我个人喜欢黑底绿字的搭配,以下是我个人的命令行界面样式: 注意:以下 ...

  6. SVN仓库连同版本信息迁移新服务器的步骤

    SVN仓库连同版本信息迁移新服务器的步骤 步骤一:导出(1)链接原服务器,找到SVN Server安装路径下的bin文件,并复制文件路径,如 C:\Program File\SVN Server\bi ...

  7. 第一次尝试用Open Live Writer写日志

    注册博客园很久了,一直没怎么用,今天登陆了一下,看到这个写日志工具,看着不错,试一下

  8. 如何在Chrome粘贴图片直接上传

    背景 截图或页面复制图片,可以直接通过Ctrl+v 粘贴上传图片 原理 操作:复制(截图)=>粘贴=>上传 监听粘贴事件=>获取剪贴板里的内容=>发请求上传 浏览器:Chrom ...

  9. cf1037D. Valid BFS?(BFS?)

    题意 题目链接 Sol 非常妙的一道题.. 可以这样想,在BFS序中较早出现的一定是先访问的,所以把每个点连出去的边按出现的前后顺序排个序 看一下按顺序遍历出来的序列与给出的是否相同就行了 #incl ...

  10. (生产)create-keyframe-animation -动画实现

    参考:https://github.com/HenrikJoreteg/create-keyframe-animation 实例 var animations = require('create-ke ...