一、css背景属性

可以给页面元素添加背景样式。

背景属性(background)可以设置。

  1、背景颜色、

  2、背景图片、

  3、背景平铺、

  4、背景图片位置

  5、背景图像固定

1、背景颜色(background-color):
  格式: background-color: 颜色值;

  1)颜色值默认是:transparent(透明)
  2)值的三种写法
 

2、背景图片(background-image): 多用于logo、装饰性小图片、超大背景图片、精灵图。优点:便于控制位置
  格式:background-image: url();

  1)默认值是none
  2)url中是地址
  3)css精灵图注意怎么处理*****后续讲解

3、背景平铺(background-repeat):  
  格式:background-repeat: no-repeat;
  1)情况:平铺(repeat)、不平铺(no-repeat)、沿x轴平铺(repeat-x)、沿y轴平铺(repeat-y).

  2)默认是平铺
  3)背景图片在背景颜色上层

 

4、背景图片位置(background-position):可以设置图片在背景中的位置
  格式: background-position:x y;
  1)x坐标和y坐标,可以用 方位名词或精准单位

  2)方位名词:只有一个参数的话。第二个参数默认center。

  3)精确单位:第一个肯定是x,第二个肯定是y。只有一个同上
  4)混合单位:同上。

5、背景图像固定(背景附着)****内容往下走背景图片不动****,可以制作视差滚动效果

  格式:background-attachment: scroll (滚动)或者 fixed(固定)

6、提倡background用复合写法简化代码

7、背景颜色半透明。  css3写法
  格式:background: rgba(0,0,0,0.3) 前三个是颜色值,第四个是不透明值设置。a是alpha(透明度)

8、背景总结

  

二、css的三大特性。1、层叠性 2、继承性 3、优先级

1、层叠性。相同选择器设置了相同样式,一个会覆盖另一个样式。层叠性主要解决样式冲突的问题。
  层叠性原则:

  1)就近原则。哪个样式离结构近,就执行哪个样式。

  2)样式不冲突,不会层叠。

  

2、继承性
  浏览器开发工具可以看到 样式属性的继承来源。 Inherited from xxx(对应的父)
  1)子元素可以继承父元素的样式(color, text-, font-, line-这些元素开头的可以继承)
  2)行高继承。font: 12px(字体大小)/24px(行高) 字体设置;这样行高就可以被继承了
  3)font: 12px(字体大小)/1.5(行高=字体大小*1.5);

3、优先级。:当同一个元素指定多个选择器,就会有优先级的产生

  1)选择器相同,执行层叠性

  2)选择器不同,根据选择器权重执行。(权重顺序)
   继承/*   <   元素选择器   <   类选择器/伪类选择器   <   ID选择器   <   行内样式 style-""   <   !important 重要的
  

  3)!important使用。写在样式后面。  * { color: red!import; }  >  div { color: green}

  4)权重叠加: 符合选择器就会有权重叠加,注意权重会叠加不会进位(元素选择器再叠加, 权重也小于类选择器)【注意测试id和 class+id】颜色是哪个。

    

三、盒子模型

  1.1 看透网页布局的本质

    页面布局的三大核心: 盒子模型、浮动、定位。

    网页布局过程:

      1)网页元素基本都是盒子box。

      2)利用css设置好盒子样式,然后摆放到相应位置。

      3)往盒子里面装内容。

  1.2 盒子模型组成

    盒子模型: 就是把HTMl页面中的布局元素看作是一个矩形的盒子,也就是一个盛装内容的容器。
    CSS盒子模型本质上是一个盒子,封装周围的HTML元素,它包括:边框(border)、外边距(margin)、内边距(padding)、实际内容(content)。
    

    盒子模型的组成:边框(border)、外边距(margin)、内边距(padding)、实际内容(content)

    

  1.3 边框(border)

    border:  border-width(边框粗细) || border-style(边框格式)|| border-color(边框颜色)
    

    1)border-style 常用的: solid(实线边框|默认值)、dotted(点线)、dashed(虚线)。

      

    2)边框复合写法格式。border:  border-width(边框粗细) || border-style(边框格式)|| border-color(边框颜色) 。这里没有固定顺序

  

  1.4 表格的细线边框 border-collapse

    border-collapse属性控制浏览器绘制表格边框的方式。它控制相邻单元格的边框
    **** table, td, th { xxx:xxx,  xxx:xxx } 。table 的td和th 多数会写在同一行。

 

  1.5 边框会影响盒子实际大小

    边框会额外增加盒子的实际大小,解决办法:

    1)测量盒子大小,不测量边框。

    2)测量的时候包含边框,就 宽高 减去边框宽度。

  1.6 内边距(padding)

    1)padding 属性用于设置内边距,即边框与内容之间的距离。

    2)padding 属性简写。1~4个值
      

    3) padding也会影响盒子实际大小

    4)padding内边距可以撑开盒子,导航栏字数不一样多,可以用padding。

    5)盒子本身没有 width/height属性,设置的padding 不会撑开盒子大小。

      操作: <div> <p> xxxxx </p> </div> 。 给div设置宽和高,p标签设置padding,这样大小不会变化,内容会离边框对应像素大小。

  1.7 外边距(margin)控制盒子与盒子之间的距离

    1)外边距可以让块级盒子 水平居中。a、盒子必须指定宽度。b、盒子左右的外边距都设置为auto

    2) 常见写法:
      

    3)行内元素或者行内块元素,水平居中给其父元素添加。text-align:center 即可*/ 行内用auto不行, 块元素用auto行

  1.8 外边距合并
    1) 合并出现的两种情况: a、相邻块元素,垂直外边距的合并。 b、嵌套块元素垂直外边距的塌陷

      a、上下相邻的两个块元素,上面有margin- bottom,下面有margin-top。那么他们之间垂直间距是 间距两个之中的较大值。

        而不是两值之和,这叫做: 相邻块元素垂直外边距的合并。
        

      b、两个嵌套关系(父子关系)的块元素,父元素有上外边距、同时子元素也有上外边距,此时父元素会塌陷较大的外边距值。

          用浮动、固定,绝对定位的盒子,不会有塌陷问题
        

  1.9 清楚内外边距 
    网页元素很多都带有默认的内外边距,而且不同浏览器默认值也不一致。

    因此我们在布局前,首先要清除网页元素的内外边距。
    1)在样式代码最上方写 * { margin: 0; padding: 0; }
    2) 行内元素为了照顾兼容性,尽量只设置左右内外边距,不要设置上下内外边距。但是转换为块级和行内块元素就可以设置了。

    

 

    

vue 学习 css第四天的更多相关文章

  1. vue学习笔记(四)

    一.vue-router 1.简介 我们经常使用vue开发单页面应用程序(SPA).在开发SPA过程中,路由是必不可少的部分,vue的官方推荐是vue-router.单页面应用程序看起来好像是一个页面 ...

  2. Vue学习【第四篇】:Vue 之webpack打包工具的使用

    什么是webpack webpack是一个模块打包工具.用vue项目来举例:浏览器它是只认识js,不认识vue的.而我们写的代码后缀大多是.vue的,在每个.vue文件中都可能html.js.css甚 ...

  3. AntDesign vue学习笔记(四)使用组件切换

    同样实现上一篇功能, 改为使用组件切换,实现方法如下 1.修改MainFrm中的<router-view/>如下代码 2.注册局部组件 export default { name: 'Ma ...

  4. Vue 学习笔记(四)

    一.路由简单示例 HTML <script src="https://unpkg.com/vue/dist/vue.js"></script> <sc ...

  5. vue学习笔记(四)---- 品牌管理案例

    一.导入相关包 <script src="../lib/vue2.6.10.min.js"></script> <script src=". ...

  6. vue学习笔记(四)——Vue实例以及生命周期

    1.Vue实例API 1.构造器(实例化) var vm = new Vue({ //选项 |-------DOM(3) |   |-------el (提供一个在页面上已存在的 DOM 元素作为 V ...

  7. vue学习笔记(四)- cmd无法识别vue命令解决方法

    解决控制台无法识别vue命令问题 作者:狐狸家的鱼 本文链接:cmd无法识别vue命令解决方法 GitHub:sueRimn 在控制台输入vue会报以下错误: vue : 无法将“vue”项识别为 c ...

  8. 从零开始的vue学习笔记(四)

    组件注册 组件名 Vue.component('my-component-name', { /* ... */ }) 这里的my-component-name就是组件名,组件名的取法可以参考指南 ke ...

  9. Vue学习日记(四)——Vue状态管理vuex

    前言 先说句前话,如果不是接触大型项目,不需要有多个子页面,不使用vuex也是完全可以的. 说实在话,我在阅读vuex文档的时候,也很难以去理解vuex,甚至觉得没有使用它我也可以.但是直到我在项目碰 ...

  10. Vue学习笔记(四)一起进阶吧

    参考链接地址:https://segmentfault.com/a/1190000009188689?from=timeline Vuex框架原理与源码分析: http://tech.meituan. ...

随机推荐

  1. ArcGIS工具 - 导出数据库结构

    为了保证数据的一致性,数据库结构的正确性在数据库建设和管理过程中显示十分重要,在各个地理信息类项目的技术规定中都对空间数据库的结构进行明确和详细的定义,有时为了方便检查或文档编辑需要将数据结构导出,为 ...

  2. S2-017 CVE-2013-2248

    漏洞名称 Apache Struts 多个开放重定向漏洞 (CVE-2013-2248) s2-017 利用条件 Struts 2.0.0 - Struts 2.3.15 漏洞原理 通过操作前缀为&q ...

  3. CF896E Welcome home, Chtholly

    题面 维护一个\(n(n\leqslant 100000)\)个元素序列\(a_1,a_2,\dots,a_n\),有\(m(m\leqslant 100000)\)次操作,分为如下两种. 给定\(l ...

  4. flutter 底部滑动导航,页面滑动同时让底部导航跟着变动,除了点击还可以滑动哦~~

    实现点击以及滑动都可以切换导航的效果 核心代码 完整代码 // 输入 imrm 快速生成下面 import 'package:flutter/material.dart'; import 'Home. ...

  5. Angular基础之ngFor遍历对象数组获取key和value渲染页面的几种方法

    Angular的ngFor遍历对象数组的几种方法 方法一 ts文件: export class MyDemo {   objectKeys = Object.keys;   myObj = { a: ...

  6. Array list练习

    Array list练习 数据添加到集合 生成6个1~33之间的随机整数,添加到集合,并遍历 public class Test01ArrayList { public static void mai ...

  7. FLASH-CH32F103替换STM32F103 FLASH快速编程移植说明

    因CH32F103 相对于STM32F103 flash 操作多了快速编程模式,该文档说明主要目的是为了方便客户在原先ST 工程的基础上实现flash 快速编程模式的快速移植. 1.在stm32f10 ...

  8. elasticsearch中使用bucket script进行聚合

    目录 1.背景 2.需求 3.准备数据 3.1 mapping 3.2 插入数据 4.bucket_script聚合的语法 5.聚合 5.1 根据月份分组排序 5.2 统计每个月卖了多少辆车 5.3 ...

  9. 【Redis场景4】单机环境下秒杀问题

    单机环境下的秒杀问题 全局唯一ID 为什么要使用全局唯一ID: 当用户抢购时,就会生成订单并保存到订单表中,而订单表如果使用数据库自增ID就存在一些问题: 受单表数据量的限制 id的规律性太明显 场景 ...

  10. 互斥锁、线程理论、GIL全局解释器、信号量、event事件、进程池和线程池以及协程

    目录 一.互斥锁代码实操 1.互斥锁的概念 2.互斥锁的使用 3.死锁现象 4. 小结 二.线程理论 进程 线程 线程简介 为什么要使用多线程? 多线程概念 多进程的优点: 线程与进程的区别 线程的特 ...