CSS<1>

目录

1.CSS简介

2.样式表

内联样式

内部样式

外联样式

CSS基本语法

选择器(简单选择器 组合器选择器 伪类选择器 伪元素选择器 属性选择器)

样式继承

选择器的权重


1.CSS简介

层叠样式表(Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。

2.样式表

内联样式

将样式直接编写到style属性中,这样只对当前元素中的内容起作用。

代码示例:


	<p style="color:red;font-size:25px;">锄禾日当午,汗滴禾下土</p>


内部样式

将css样式编写到head中的style标签里,选中指定元素,同时为这些元素一起设置样式。

<!doctype html>
<html>
	<head>
		<meta charset="utf-8" />
		<title>CSS</title>
		<!--
			text:表示写的内容为文本
			css:表示编写的是一个CSS的样式表
			type是一个固定值,或默认值
		-->
		<style type="text/css">
		p{
			color:red;
			font-size:25px;
		}
		</style>
	</head>
	<body>
	<p>锄禾日当午,汗滴禾下土</p>
	<p>谁之盘中餐,粒粒皆辛苦</p>
	</body>
</html>

外联样式

编写到外部css文件中,然后通过link标签来将外部的css文件引入到当前页面中,这样外部文件中的CSS样式表将会应用到当前页面中。


优势:

1.完全使结构和表现分离,可以是样式表在不同的页面使用,最大限度的使样式可以进行复用。
2.可以利用浏览器的缓存,加快用户访问的速度提高用户体验。

HTML

<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Sign Up Page</title>
    <link rel="stylesheet" href="style.css" type="text/css">

CSS

body {
    background-color: #59CD90;
    color: #3FA7D6;
    font-family: "Fjalla One", Arial;
  }
  

CSS基本语法

选择器(选中页面的指定元素)

声明块  (为元素设置样式,由声明组成,一个样式名一个样式值)

  注释 /* */

   

选择器

  • 简单选择器(根据名称、id、类来选取元素)
    p {
      text-align: center;
      color: red;
    }
    /*元素选择器,选中为p的元素,页面上的所有 <p> 元素都将居中对齐,并带有红色文本颜色*/
    
    #para1 {
      text-align: center;
      color: red;
    }
    /*id选择器 要选择具有特定 id 的元素,请写一个井号(#),后跟该元素的 id。
    这条 CSS 规则将应用于 id="para1" 的 HTML 元素*/
    
    .center {
      text-align: center;
      color: red;
    }
    /*类选择器选择有特定 class 属性的 HTML 元素。
    如需选择拥有特定 class 的元素,请写一个句点(.)字符,后面跟类名。例:p.center
    在此例中,所有带有 class="center" 的 HTML 元素将为红色且居中对齐*/
    
    * {
      text-align: center;
      color: blue;
    }
    /*通用选择器,影响页面的所有元素*/
    
    h1, h2, p {
      text-align: center;
      color: red;
    }
    /*分组选择器,可选择所以样式一样的元素*/
    
    

  • 组合器选择器(根据它们之间的特定关系来选取元素)
    div p {
      background-color: yellow;
    }
    /*后代选择器 匹配属于指定元素后代的所有元素。
    例子选择 <div> 元素内的所有 <p> 元素 */
    
    div > p {
      background-color: yellow;
    }
    /*
    子选择器 匹配属于指定元素子元素的所有元素。
    例中选择属于 <div> 元素子元素的所有 <p> 元素 */
    
    div + p {
      background-color: yellow;
    }
    /*
    相邻兄弟选择器 匹配所有作为指定元素的相邻同级的元素。
    兄弟(同级)元素必须具有相同的父元素,“相邻”的意思是“紧随其后”。
    例中选择紧随 <div> 元素之后的所有 <p> 元素*/
    
    div ~ p {
      background-color: yellow;
    }
    /*
    通用兄弟选择器匹配属于指定元素的同级元素的所有元素。
    例中选择属于 <div> 元素的同级元素的所有 <p> 元素:*/

  • 伪类选择器(根据特定状态选取元素)
    /*锚伪类
    链接能够以不同的方式显示:
    注:a:hover 必须在 CSS 定义中的 a:link 和 a:visited 之后,才能生效!
    a:active 必须在 CSS 定义中的 a:hover 之后才能生效!伪类名称对大小写不敏感。*/
    /* 未访问的链接 */
    a:link {
      color: #FF0000;
    }
    
    /* 已访问的链接 */
    a:visited {
      color: #00FF00;
    }
    
    /* 鼠标悬停链接 */
    a:hover {
      color: #FF00FF;
    }
    
    /* 已选择的链接 */
    a:active {
      color: #0000FF;
    }
    
    
    /*伪类和 CSS 类
    伪类可以与 CSS 类结合使用:鼠标悬停在例子中的链接上时,它会改变颜色*/
    
    a.highlight:hover {
      color: #ff0000;
    }
    
    /*简单的工具提示悬停
    把鼠标悬停到 <div> 元素以显示 <p> 元素(类似工具提示的效果):*/
    p {
      display: none;
      background-color: yellow;
      padding: 20px;
    }
    
    div:hover p {
      display: block;
    }
    
    /*CSS - :first-child 伪类
    :first-child 伪类与指定的元素匹配:该元素是另一个元素的第一个子元素。
    
    匹配所有 <p> 元素中的首个 <i> 元素
    在下面的例子中,选择器匹配所有 <p> 元素中的第一个 <i> 元素:*/
    
    p i:first-child {
      color: blue;
    }

  • 伪元素选择器(选取元素的一部分并设置其样式)
selector::pseudo-element {
  property: value;
}

/*::first-line 伪元素(只能应用于块级元素)  用于向文本的首行添加特殊样式。
为所有 <p> 元素中的首行/首字母添加样式:*/
p::first-line {
  color: #ff0000;
  font-variant: small-caps;
}
p::first-letter {
  color: #ff0000;
  font-size: xx-large;
}

p.intro::first-letter {
  color: #ff0000;
  font-size: 200%;
}
/* 伪元素和 CSS 类 将以红色和较大的字体显示 class="intro" 的段落的首字母。*/

h1::before {
  content: url(smile.gif);
}

/*CSS - ::before 伪元素  可用于在元素内容之前插入一些内容。
将在每个 <h1> 元素的内容之前插入一幅图像 
::after 类似*/

::selection {
  color: red; 
  background: yellow;
}
/* ::selection 伪元素匹配用户选择的元素部分。
以下 CSS 属性可以应用color background cursor outline*/

 

/*CSS [attribute] 选择器
[attribute] 选择器用于选取带有指定属性的元素。
下例选择所有带有 target 属性的 <a> 元素*/

a[target] {
  background-color: yellow;
}
/*CSS [attribute="value"] 选择器
[attribute="value"] 选择器用于选取带有指定属性和值的元素。
选取所有带有 target="_blank" 属性的 <a> 元素*/

a[target="_blank"] { 
  background-color: yellow;
}

/*CSS [attribute~="value"] 选择器
[attribute~="value"] 选择器选取属性值包含指定词的元素。
下例选取 title 属性包含 "flower" 单词的所有元素*/

[title~="flower"] {
  border: 5px solid yellow;
}

/*CSS [attribute|="value"] 选择器
[attribute|="value"] 选择器用于选取指定属性以指定值开头的元素。
下例选取 class 属性以 "top" 开头的所有元素:
注释:值必须是完整或单独的单词,比如 class="top" 或者后跟连字符的,比如 class="top-text"。*/
[class|="top"] {
  background: yellow;
}


/*CSS [attribute^="value"] 选择器
[attribute^="value"] 选择器用于选取指定属性以指定值开头的元素。
下例选取 class 属性以 "top" 开头的所有元素,值不必是完整单词!*/
[class^="top"] {
  background: yellow;
}


/*CSS [attribute$="value"] 选择器
[attribute$="value"] 选择器用于选取指定属性以指定值结尾的元素。
下例选取 class 属性以 "test" 结尾的所有元素*/
[class$="test"] {
  background: yellow;
}

/*CSS [attribute*="value"] 选择器
[attribute*="value"] 选择器选取属性值包含指定词的元素。
下例选取 class 属性包含 "te" 的所有元素*/
[class*="te"] {
  background: yellow;
}


/*设置表单样式
若需为不带 class 或 id 的表单设置样式,属性选择器会很有用*/

input[type="text"] {
  width: 150px;
  display: block;
  margin-bottom: 10px;
  background-color: yellow;
}

input[type="button"] {
  width: 120px;
  margin-left: 35px;
  display: block;
}

样式继承

  1. 在CSS中,祖先元素上的样式,会被它的后代元素所继承利用继承,可以将一些基本的样式设置给祖先元素,这样所有的后代元素将会自动继承这些样式
  2. 并不是所有的样式都会被后代元素所继承,比如:和背景相关的样式,边框相关的样式,定位相关的样式就不会被继承

选择器的权重

选择器优先级(优先级高先显示)
内联样式1000
id选择器100
类和伪类10
元素选择器1
通配选择器0
继承样式没有优先级

注:

1 当选择器中包含多种选择器时,需要将多种选择器的优先级相加然后再比较。选择器的优先级计算不会超过它的最大数量优先级,如果选择器的优先级一样,则使用靠后的样式

2 并集选择器的优先级是单独计算

3 可以在样式后,添加一个!important,则此时该样式将会获得一个最高的优先级,将会优先于所有的样式显示甚至超过内联样式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值