美文网首页Web前端之路虾写前端
前端学习笔记-CSS系列(一)选择器

前端学习笔记-CSS系列(一)选择器

作者: 多喝热水z | 来源:发表于2016-07-10 16:53 被阅读136次

CSS简介

CSS(Cascading Style Sheets)是一种用来表现HTML标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
嗯,简单的说,就是用来美化网页的。


使用方法

有三种方法可以在站点网页上使用样式表:

  1. 外联式Linking(也叫外部样式):将网页链接到外部样式表。
  2. 嵌入式Embedding(也叫内页样式):在网页上创建嵌入的样式表。
  3. 内联式Inline(也叫行内样式):应用内嵌样式到各个网页元素。
外部样式表

当样式需要被应用到很多页面的时候,外部样式表将是理想的选择。使用外部样式表,你就可以通过更改一个文件来改变整个站点的外观。

    <head>
    <link rel="stylesheet" type="text/css" href="index.css">
    </head>
内部样式表

当单个文件需要特别样式时,就可以使用内部样式表。你可以在 head 部分通过 <style> 标签定义内部样式表。

    <head>
    <style type="text/css"> 
    body {background-color: red} 
    p {margin-left: 20px}
    </style>
    </head>
内联样式

当特殊的样式需要应用到个别元素时,就可以使用内联样式。 使用内联样式的方法是在相关的标签中使用样式属性。样式属性可以包含任何 CSS 属性。以下实例显示出如何改变段落的颜色和左外边距。

<p style="color: red; margin-left: 20px"> 
This is a paragraph 
</p>

基本形式

那我们看到CSS选择器的基本形式是这样的

selector(选择器){
    property1:value;(属性声明)
    property2:value;
}

由一个选择器表达式和括号内的属性字典组成

兼容模式

目前的主流浏览器有很多种,那么我们为了兼容不同的浏览器,就要知道浏览器的私有属性

  • Chrome,Safari
    -webkit
  • Firebox
    -moz
  • IE
    -ms
  • Opera
    -o
例子
  .pic{
    -webkit-transform:rotate(-3deg);
    -otransform:rotate(-3deg);
    -moz-transform:rotate(-3deg);
    -ms-transform:rotate(-3deg);
    transform:rotate(-3deg);
  }

语法

  • 属性值语法
    margin:[<length>|<percentage>|auto]{1,4}
    上面这个表达式由基本元素、组合符号、数量符号三部分组成。下面我们将逐步对这三个部分进行详解。

  • 基本元素组成
    1.关键字 auto solid bold
    2.基本类型 length percentage color
    3.其他类型 'padding-width' color-stop

  • 组合符号
    1.空格
    <‘font-size’> <font-family>
    必须按顺序输入相对属性值
    E.g
    -12px arial
    2.&& 与空格相似 不过可以无序
    3.|| 分割的基本属性至少出现一个
    4.| 分割的属性只能出现一个
    5.[] 属性分组

  • 数量符号
    1.默认只能出现一次
    2.+ 1次或多次
    3.? 表示属性可选
    4.{int,int} 第一个数字表示最少出现次数 第二个数字表示最多出现次数
    5.* 可以出现 0次1次或者多次
    6.# 出现一次或者多次 中间要用逗号隔开
    E.g
    1
    padding-top:<length>|<percentage>

        true padding-top:1px
        false padding-top:1em 5%
        2
        border-width:[<length>|thick|medium|thin]{1,4}
    
        true border-width:2px;
        false border-width:2px small;
        3
        box-shadow:[inset?&&[<length>{2,4}&& <color>?]]#|none
    
        true box-shadow:3px 3px rgb(50%,50%,50%),red 0 0 4px inset;
        false box-shadow:inset 2px 4px,2px blue;
    
  • @规则语法
    @标识符 xxx:
    @标识符 xxx{}
    常用@规则
    @media 响应式布局
    @keyframes 用来描述css动画中间步骤
    @font-face 引入外部字体
    不常用
    @import
    @charset
    @namespace
    @page
    @supports
    @document

选择器

选择器主要分

  • 简单选择器
  • 伪元素选择器
  • 组合选择器
简单选择器
  1. 标签选择器
    基本形式
    tag{color:bule;}
  2. 类选择器
    基本形式
    .className{}
    选择器特点
  • 由字母,数字,-,_组成
  • 必须以字母开头
  • 区分大小写
  • 可以出现多次
    e.g
    <p chass = "special">
    <p class = “special stress”>
    如果想让special类为红色
    .special{color:red;}
    属性可以叠加
    .stress{font-weight:bold;}
    这样第二个p标签同时会拥有两个属性
  1. id选择器
    基本形式
    #idName{}
    选择器特点
  • 由字母,数字,-,_组成
  • 必须以#开头
  • 区分大小写
  • 只能出现一次
  1. 通配符选择器
    基本形式
    *{}
    作用:会选择页面内所有元素
  2. 属性选择器
    基本形式
    []{}
e.g

不可用状态样式
[disabled]{background:#eee}
类型是button的样式

    [type=button]{color:blue;}

类包含XXX
[class~=xxxx]{color:blue;}
链接中以#开头
[href^=“#”]{color:red;};
链接中以某形式结尾比如.pdf
[herf$=pdf]{color:red;};
链接中包含某些值
[href*=“xxxx.xxx.com”]

  1. 伪类选择器
    基本形式
    tag:statement{}
e.g

所有链接字体颜色 只能选择herf有值的
a:link{}
表示访问过的
a:visited{}
悬停
a:hover{}
点击上去
a:active{}

input标签的三种状态
    input:enabled/disabled/checked{}
列表行li标签

第一行或最后一行
li:first-child/last-child{}
偶数行
li:nth-child(even){}
表达式
li:nth-child(3n+1){}
倒数
li:nth-last-child(3n+1){}
标签下只有一个子元素的
tag:only-child{}

选择某标签类型的

表示选择第一个dd类型的
dd:first-of-type{}

简单选择器还可以进行组合

e.g

如果我们想选择img标签 jpg结尾的元素

img[src$=jpg]{}

id是banner hover状态的元素
#banner:hover{}

伪元素选择器

选择页面所有元素第一个字母

::first-letter{}  

第一行

::first-line{} 

在内容包含XX之前

::before{content:”XX”;};

之后

::after{content:”XX”};

内容被用户选中样式

::selection{} 
组合选择器
  1. 后代选择器
e.g

class="main" 所有是h2标签的元素
.main h2 {}

  1. 子选择器
    class="main" 第一个标签h2的元素
    .main>h2 {}
  2. 相邻兄弟选择器
    选中h2后相邻的p元素
    h2+p{}
  3. 通用兄弟选择器
    h2后所有的p节点
    h2~p{}
  4. 选择器分组
    h1,h2,h3{}

如有不足,请各位大大进行批评指正。谢谢

相关文章

  • 前端学习笔记-CSS系列(一)选择器

    CSS简介 CSS(Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应...

  • CSS-选择器1-概述

    CSS选择器-系列文章 CSS选择器-系列文章下一节 CSS选择器2-类选择器CSS3参考手册

  • CSS学习笔记

    css学习笔记 在html引入css的三种方式 css选择器 伪选择器 选择器的组合 伪类选择器 选择器的优先规则...

  • 收集前端学习资料

    前端的一些学习资源 html和css代码规范 前端知识体系 前端网址大全 学习CSS布局 通用 CSS 笔记、建议...

  • CSS-选择器11-first-of-type、last-of-

    CSS选择器-系列文章 1、选择器说明 2、效果演示 源代码 运行效果: CSS选择器-系列文章下一节 选择器12...

  • CSS相关---复合选择器

    第01阶段.前端基础 CSS 复合选择器 复合选择器后代选择器并集选择器 标签显示模式 CSS背景背景位置 CSS...

  • 02-CSS基础选择器

    typora-copy-images-to: media 第01阶段.前端基础.CSS基础选择器 CSS选择器(重...

  • CSS学习总结

    学了有一小段时间前端了,今做个CSS的总结! 目录: CSS 简介 CSS 语法 CSS 选择器 CSS 引入方式...

  • CSS-选择器7-属性

    CSS选择器-系列文章 1、CSS属性选择器 2、CSS2属性效果演示 运行效果: 3、CSS3属性效果演示 运行...

  • CSS选择器

    CSS学习笔记 一、CSS选择器 0.通配符 通配符是全局的设定的CSS样式,也就是设置了之后整个界面都会采用的样...

网友评论

    本文标题:前端学习笔记-CSS系列(一)选择器

    本文链接:https://www.haomeiwen.com/subject/swtdjttx.html