1.层叠

规则之间属性相同,值不同的时候就会发生声明冲突,这个时候层叠就会起作用了,层叠会将我们声明的不同的值进行保留,相同的值进行比较,选权重值更高的一个来运行。具体情境如下:假设我们定义了一个div标签,再定义其宽高,并赋予它一个类名为div,然后我们通过CSS文件对他的样式进行更改,用元素选择器指定它的背景颜色为红色,再用类选择器指定它的背景颜色为蓝色,这个时候就发生了前面提到的声明冲突,运行结果我们会发现div的背景颜色变成了蓝色,而决定div最终变为蓝色背景的就是层叠。那么层叠是根据什么来决定要在执行哪一个声明的呢?一、比较优先级。声明分为普通声明和重要声明,例:color:red;是一个普通声明,color:red !important;是一个重要声明,在发生声明冲突时,层叠会执行重要声明。二、比较特殊性。所谓特殊性,就要引入一个概念,那就是权重值,内联样式(即内嵌在元素标签内部的样式,如<a style:color:red></a>)的权重值为(1,0,0,0),id选择器的权重值为(0,1,0,0),类选择器的权重值为(0,0,1,0),元素选择器的权重值为(0,0,0,1),通配符的权重值为0,重要声明的权重值最高,层叠会根据声明的权重值,执行权重值大的声明。PS:权重值:重要声明>内联样式>id选择器>类选择器>元素选择器>通配符

2.继承

所谓继承,就是子元素会自动拥有父元素的某些CSS属性,文本类的属性会被继承,例如:假设某个p标签是某个span标签的父元素,当我们定义p标签字体颜色为红色,字体大小为14后,span里的文字内容字体颜色也是红色,字体大小也是14。

3.盒模型

每个元素都会在页面中生成一个矩形区域,CSS将这个矩形区域称为盒子,也就是盒模型。盒模型由四个部分组成:一、content,即内容。二、padding,即内边距。三、border,即边框。四、margin,即外边距。我们可以想象一个快递盒子,content就是我们买的东西,padding就是快递员塞进去的泡泡纸,塞的越多,箱子就会越大,border就是快递外包装,margin就是一个快递盒子和另外一个快递盒子之间的距离。

4.元素的定位体系

元素在页面的定位体系有三种:常规流,浮动Float,绝对定位

常规流即文档流。浮动Float可以让元素向上向左或向上向右浮动,但会让页面结构脱离文档流。绝对定位也会让页面结构脱离文档流。

5.常规流

在没有CSS的干预下,块级元素独占一行,宽高可设,行内元素并排显示,宽高自动。

css部分概念的更多相关文章

  1. css基本概念与css核心语法介绍

    css基本概念 css是什么?不需要了解太多文字类介绍,记住css是层叠样式表,HTML是页面结构,css负责页面样式,javascrt负责静态页面的交互.CSS 能够对网页中元素位置的排版进行像素级 ...

  2. CSS核心概念之盒子模型

    盒子模型(Box Model) 关于更多CSS核心概念的文章请关注GitHub--CSS核心概念. 当对一个文档进行布局的时候,浏览器的渲染引擎会根据标准之一的 CSS 基础框盒模型(CSS basi ...

  3. CSS:概念和三种样式

    简介: CSS(Cascading Style Sheets):层叠样式表,它用来控制HTML标签的样式,给网页结构穿衣服~ CSS的编写格式是键值对的形式  ->  格式:属性名 : 属性值: ...

  4. [浅谈CSS核心概念] CSS布局模型:float和position

    1.流动模型 HTML元素在默认情况下都是按照"流动模型"进行布局的,网上也有人称之为"普通流"."文档流"之类的.这种布局模式的特点在于: ...

  5. [浅谈CSS核心概念] CSS元素类型和盒模型

    元素类型 在CSS中,HTML标签元素分为三种类型: 块状元素 内联元素(也叫行内元素) 内联块状元素 它们之间的区别在于: 块级元素会独占一行,内联元素和内联块状元素则都会在一行内显示 块状元素和内 ...

  6. css局部概念的理解:

    1.DIV-Padding理解:一直以来对div中的padding属性,一直不理解,使用最多的也就是margin,padding是div的内空间的相对距离,margin是div的外部相对位置,如果用一 ...

  7. CSS line-height概念与举例

    本文同时发表在https://github.com/zhangyachen/zhangyachen.github.io/issues/37 定义 两行文字基线之间的距离. 基线的大体位置 基线的位置可 ...

  8. CSS 文字概念小记

    1.水平居中: 更多的是指宽度的居中,margin: 0 auto; 2.垂直居中: 是指高度的居中 PS:这个两个慨念我老是搞混,今天记录一下,防止下次又忘了

  9. CSS基本知识1-CSS基本概念

    CSS基本概念: 选择器{属性:值;属性:值} CSS继承:子元素继承父元素样式,父子关系看DOM结构. CSS覆盖: 浏览器缺省设置 外部样式表 内部样式表(位于 <head> 标签内部 ...

随机推荐

  1. js后端返回一个时间戳,用原生怎么对时间进行格式化?

    function fn(time) { var date = new Date(time); var len = time.toString().length; // 时间戳不足13位则在后面加零 i ...

  2. java el表达式报空指针异常(nullpointexception)

    最近在使用el表达式的时候,用到了int型变量,因为,很多时候,变量不会被赋初值,后面考虑了下,应该将声明由int 改为integer,改了之后就一直报空指针异常,后面仔细查看,我的getter和se ...

  3. 求解最长回文串 manachar算法

    转载:http://blog.sina.com.cn/s/blog_70811e1a01014esn.html ;i<len;++i){ if(mx>i) p[i]=min(p[*id-i ...

  4. Activiti7工作流+SpringBoot

    文章目录 一. Activiti相关概念 1. Activiti介绍 2. 核心类 2.1 ProcessEngine 2.2 服务(Service)类 2.2.1 TaskService 2.2.2 ...

  5. 2018-2-13-C#-枚举转字符串

    title author date CreateTime categories C# 枚举转字符串 lindexi 2018-2-13 17:23:3 +0800 2018-2-13 17:23:3 ...

  6. THINKPHP框架的优秀开源系统推荐

    THINKPHP框架的优秀开源系统推荐 众所周知,国内众多优秀的开源框架,ThinkPHP从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性.并且拥有众多的原创功能 ...

  7. python NameError: name 'raw_input' is not defined

    错误:NameError: name 'raw_input' is not defined 原因出在raw_input ,python3.0版本后用input替换了raw_input 话说回来,学习p ...

  8. java Class中得到构造方法Constructor、方法Method、字段Field

    常用方法: Constructor类用于描述类中的构造方法: Constructor<T> getConstructor(Class<?>... parameterTypes) ...

  9. ASP.NET MVC 实现页落网资源分享网站+充值管理+后台管理(14)之会员中心管理

    源码下载地址:http://www.yealuo.com/Sccnn/Detail?KeyValue=c891ffae-7441-4afb-9a75-c5fe000e3d1c 会员中心,主要包含了会员 ...

  10. js操作改变原数组的解决方法

    最近在开发的时候发现js中的循环操作会改变原数组,var一个变量承接也不行 甚至连map方法都会改变原数组,下面是解决方法 let a = ['a','b','c'] let b = [[2, 0, ...