编写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. studio--常见设置

    13.Butterknife插件:zelezny 12.android studio怎么设置打开项目时打开项目列表? 11.stuido   代码背景颜色设置为护眼模式 ======== 13.But ...

  2. percona-toolki安装冲突(my.cnf Percona-Server-shared与mysql-community-server)

    最近在安装percona-toolkit工具包时,提示在my.cnf文件中, Percona-Server-shared与mysql-community-server冲突.起初还以为是一定需安装Per ...

  3. 学习 MeteoInfo二次开发教程(一)

    来自气象家园:http://bbs.06climate.com/forum.php?mod=viewthread&tid=6631 按照教程,没有太大问题,有些是对c#操作不熟悉导致. 1.添 ...

  4. Centos6搭建Samba服务并使用Windows挂载

    一.安装相关软件 [root@mail ~]# yum install samba samba-client -y #安装相关软件 二.配置匿名访问 [root@mail ~]# cd /etc/sa ...

  5. 时间的转化 js

    php 和java是不一样的 PHP 需要先乘1000 java  不需要 因为PHP传过来的是十位数 java传过来是十三位数 function formatDate() { var now = n ...

  6. background-position,有逗号和没逗号:截然不同的结果

    写星级评分demo的时候,发现background-position这个属性有点神奇 如上图,在其值中加“,”与不加“,”会带来截然不同的结果,来研究一哈,顺便把这个属性复习一下 1.backgrou ...

  7. PHP json_encode 文本形式数字下标数组导致下标丢失

    $arr = array( '0'=>'a','1'=>'b','2'=>'c','3'=>'d' ); echo json_encode($arr); 但是结果是 [&quo ...

  8. springboot maven 部署

    1.在pom.xml文件中配置tomcat插件 <build> <plugins> <plugin> <groupId>org.springframew ...

  9. vsCode关闭代码检查工具

    在script标签里,第一行输入下面的内容即可:

  10. 修改tomcat的编码方式,可以解决某些get请求乱码问题

    在tomcat/conf/server.xml配置文件添加如下,修改tomcat的编码方式 <Connector URIEncoding="utf-8" connection ...