编写css,很自然的思路:

1、给哪些元素添加样式呢?选择器技术就解决这个问题。

2、添加哪些样式?这就要了解css样式属性及它的值对应的显示规则了。

因此,学习css首先要学的就是选择器,至于样式属性需要靠实践的积累了。

CSS选择器,用于选择需要添加样式的元素。

选择器就是一个遍历树的算法。HTML元素以树结构构成HTML文档,选择器遍历树找到符合条件的元素。

选择器的种类(可以理解为按什么条件遍历):

1、元素选择器

如:p {color:red;}

这个样式将应用到页面里的所有p元素。

2、类选择器

给html元素添加class属性后,使用“.”定义。

如,选择所有class为class1的元素

.class1 {color:red;}

再如,选择class为class1的所有p元素。

p.class1 {color:red;}

省略去元素名就可以了。

3、id选择器

给html元素添加id属性后,以"#"定义。

如:#id1 {color:red;}

给一个html元素设置多个class样式,很简单用空格隔开就好:

如:<p class="class1 class2 class3...">

给多个html元素编写统一样式,也很简单,用逗号隔开就好:

如:p,h1,h2,.class1{ color:red;}

css属性的继承与覆盖继承:

子元素会继承父元素的属性,但如果子元素指定了与父元素相同的属性,就会覆盖继承。不过不是所有属性都可以继承的,如字体、字体颜色等属性是可以继承的,边框属性却不可以继承。

样式冲突

当元素应用了几组样式规则时,可能会有些规则重复定义了,这时候浏览器如何选择样式?这就要设计样式的优先级了,有权重计算方法,待研究。

一般规则: id选择器>class选择器>元素选择器。

然后是按加载顺序,后加载的优先级高。

还有指定了!important的优先级最高。

验证css:可以通过这工具来验证:http://jigsaw.w3.org/css-validator/

css选择器用法,来自http://www.w3school.com.cn/cssref/css_selectors.asp

扫一扫关注,学习编程:

【轻松前端之旅】CSS入门的更多相关文章

  1. 【轻松前端之旅】​CSS选择器中的空格与尖括号有何区别?

    CSS选择器中的空格与尖括号有何区别? 例子1: .a .b { margin: 0; } 空格隔开a和b,选择所有后代元素. 例子2: .a>.b { margin: 0; } 尖括号隔开a和 ...

  2. 【轻松前端之旅】CSS盒子模型

    盒子模型,也叫框模型,在CSS里是很重要的概念. 每个元素都可以看做一个盒子.盒子包含四个部分:外边距(margin).边框(border).内边距(padding).元素内容(element con ...

  3. 【轻松前端之旅】<!DOCTYPE>标签

    前端学习,先学习HTML,CSS,Javascript HTML - HyperText Markup Language HTML-超文本标记语言,提供了一种标记网页内容的方法. 浏览器怎么知道如何显 ...

  4. 前端开发HTML&CSS入门——具体是做什么的

    软件开发,一提起来感觉这个感觉这个词范围很大很广,说起来也很笼统.不知所云,开发的到底是什么?或者说开发的具体内容是什么?以前我们讲软件开发主要是分前端和后端,那前端和后端又是什么那?你可以这么通俗的 ...

  5. 【轻松前端之旅】HTML的块元素、行内元素和空元素

    块(block)元素 显示成一块,前后有换行.块元素常用于web页面的主要构造模块.例如:<div>,<p>,<h1>~<h6>,<blockqu ...

  6. 【轻松前端之旅】元素,标记,属性,<html>标签

    HTML文档是由HTML元素定义的. HTML元素(element)指的是从开始标签(start tag)到结束标签(end tag)的所有代码. 有些元素会使用简写记法,如<img src=' ...

  7. 前端开发之CSS入门篇

    一.CSS介绍和语法 二.CSS引入方式 三.基本选择器 四.高级选择器 五.伪类选择器 六.伪元素选择器 1️⃣  CSS介绍和语法 1. CSS的介绍 (1)为什么需要CSS? 使用css的目的就 ...

  8. 前端学习笔记--CSS入门

    1.css概述: 2.css语法: 3.css添加方法: 用单独的文件存储css样式的优点: 优先级: h3得到的样式是内嵌样式覆盖了外部样式. 4.css选择器 标签选择器: 类别选择器: ID选择 ...

  9. 前端开发HTML&css入门——伪类选择器和一些特殊的选择器

    伪类和伪元素 有时候,你需要选择本身没有标签,但是仍然易于识别的网页部位,比如段落首行或鼠标滑过的连接.CSS为他们提供一些选择器:伪类和伪元素. 常用的一些伪类选择器: :link :visited ...

随机推荐

  1. FreeBsd网络性能优化方案sysctl

    以下是阿盛的配置 sysctl net.inet.tcp.msl= sysctl net.inet.tcp.mssdflt= sysctl net.inet.tcp.minmss= sysctl ne ...

  2. 2017-2018-2 20165312 实验三《敏捷开发与XP实践》实验报告

    2017-2018-2 20165312 实验三<敏捷开发与XP实践>实验报告 一.实验内容 1.XP基础 极限编程(Extreme Programming,XP)是一种全新而快捷的软件开 ...

  3. doris 0.9.0版本docker镜像制作与使用

    1. 安装docker 详情请参见本人博客 2. 编译doris 详情请参见doris官网文档 3. 在编译好的doris output文件夹下编写两个Dockerfile 3.1  Dockerfi ...

  4. Flume架构

    Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集.聚合和传输的系统: Flume 介绍 Flume是由cloudera软件公司产出的高可用.高可靠.分布式的海量日志收集系 ...

  5. Sqlserver 2016 R Service环境安装的各种错误(坑)解决办法

    相信很多朋友都会慕名Sqlserver 2016的R语言功能,将自己的数据库升级到Sqlserver 2016,但是当你安装完Sqlserver 2016的R语言组件之后,你会发现并不能直接使用,比如 ...

  6. OOM问题定位

      一:堆内存溢出 Java创建的对象一般都是分配在堆中,如果是由于过期对象没能回收(内存泄漏)或者对象过多导致放不下(内存溢出),一般报错: Exception in thread \"m ...

  7. 纯Java——简易高并发框架

    转自:https://blog.csdn.net/MonkeyDCoding/article/details/81369610 0.源代码github-简易高并发框架 注:本篇博客知识来自于网课. 1 ...

  8. jqueryValidate

    参数详情可参见: http://www.runoob.com/jquery/jquery-plugin-validate.html 基本使用: /** 数据保存前校验 **/ $("#use ...

  9. byobu 禁止窗口名称随目录变化

    It looks like the config set-window-option -g automatic-rename off doesn't work. When I added the fo ...

  10. mysql const与eq_ref的区别

    简单地说是const是直接按主键或唯一键读取,eq_ref用于联表查询的情况,按联表的主键或唯一键联合查询. 下面的内容翻译自官方方档: const该表最多有一个匹配行, 在查询开始时读取.由于只有一 ...