• 前端基础:CSS


    CSS - 幕布 (https://mubu.com/doc/cu5lf_GGG0

    CSS
     
    • 选择器
      • 基本选择器
        • 类选择器
          .box { ... }
        • id选择器
          # box { ... }
        • 标签选择器
          div { ... }
        • 通用选择器
          * { ... }
      • 组合选择器
        • 并集选择器(分组选择器)
          div, p, # account { ... } 多个选择器通过逗号连接而成,同时声明多个风格相同的样式
        • 交集选择器
          div.box { ... } / div#box { ... } 由两个选择器链接而成,选中二者范围的交集,两个选择器器之间不能有空格,且第一个必须是标签选择器,第二个必须是类选择器或者id选择器。
        • 后代选择器
          div ul li a { ... } 外层的选择器写在前面,内层的选择器写在后面,之间用空格分隔;标签嵌套是,内层的标签成为外城标签的后代。
        • 子元素选择器
          ul>li { ... } 用过>连接,找到ul的所有li标签​(子元素
        • 弟弟选择器
          div~p { ... } 用~连接,找到与div同级且排在后面的p标签。
        • 毗邻选择器
          div+p { ... } 用+连接,找到紧挨在div后面的第一个同级p标签​。
        • 属性选择器
          根据HTML元素的特定属性选择元素。
          • 根据属性查找
            [type] { ... }
          • 根据属性和值查找
            [type="hello"] { ... } 属性等于hello的元素
            [type^="hello"] { ... } 属性​以hello开头的元素
            [type$="hello"] { ... } ​属性以hello结尾的元素​
            [type*="hello"] { ... } 属性​包含hello的元素​
            [type~="hello"] { ... } ​属性中有一个值为hello的元素
      • 伪类选择器
        • a:link { ... }
          没有访问的超链接a标签样式
        • a:visited { ... }
          访问过的超链接a标签样式
        • a:hover { ... }
          鼠标悬浮在元素上应用样式
        • a:active { ... }
          鼠标点击瞬间的样式
        • input:focus { ... }
          input输入框获取焦点时样式
      • 伪元素选择器
        • p:first-letter { ... }
          用于为文本的首字母设置特殊样式​​
        • p:before { ... }
          用于在元素的内容前面插入新内容
        • p:after { ... }
          用于在元素的内容后面插入新内容
    • 选择器的优先级
      !import -> 内联元素 -> id选择器 -> 类选择器 -> 元素选择器 (权重计算永不进位)
    • 字体属性
      • font-family
        可以把多个字体名称作为一个“回退”系统来保存。如果浏览器不支持第一个字体,则会尝试下一个。浏览器会使用它可识别的第一个值。
        body {
        font-family: "Microsoft Yahei", "微软雅黑", "Arial", sans-serif;
        }​
        如果设置成inherit,则表示继承父元素的字体。​
      • font-weight
        字重(字体粗细):lighter、normal、bord、border、100~900、inherit
      • font-size
        字体大小
      • color
        字体颜色:【十六进制值 如: #FF0000】、【一个RGB值 如: RGB(255,0,0)】、【颜色的名称 如: red】
    • 文字属性
      • text-align
        文本对齐:left、right、center、justify
      • line-height
        行高
      • text-decoration
        文字装饰:none、underline、overline、line-through、inherit
    • 背景属性
      • background-color
        背景颜色
      • background-image
        背景图像
      • background-size
        背景图片的尺寸
      • background-repeat
        重复背景图像
        • repeat
          默认
        • repeat-x
          背景图像将在水平方向重复
        • repeat-y
          背景图像将在垂直方向重复
        • no-repeat
          背景图像将仅显示一次
        • inherit
          继承
      • background-attachment
        背景图像是否固定或者随着页面的其余部分滚动
        • scroll
          背景图像会随着页面其余部分的滚动而移动(默认值)
        • fixed
          当页面的其余部分滚动时,背景图像不会移动
        • inherit
      • background-position
        背景图像的位置
        • top left / top center / top right ...
          如果只设置了一个关键词,那么第二个值就是"center"
        • x% y%
          左上角是 0% 0%。右下角是 100% 100%
          如果只设置了一个值,另一个值就是50%
        • xpos ypos
          单位是像素 (0px 0px) 或任何其他的 CSS 单位
          如果只设置了一个值,另一个值就是50%。
          可以混合使用%和position值​
      • inherit
        继承
    • display属性
      • 行内元素和块级元素的区别
        • 行内元素:
          与其他行内元素并排;
          不能设置宽、高。默认的宽度,就是文字的宽度。
        • 块级元素:
          霸占一行,不能与其他任何元素并列;
          可设置宽、高。如果不设置宽度,那么宽度将默认变为父亲的100%。
      • 块级元素和行内元素的分类
        • 从HTML的角度
          文本级标签:p、span、a、b、i、u、em。
          容器级标签:div、h系列、li、dt、dd。
        • 从CSS的角度
          行内元素:除了p之外,所有的文本级标签,都是行内元素。p是个文本级,但是是个块级元素。
          块级元素:所有的容器级标签都是块级元素,还有p标签。
      • 块级元素和行内元素的相互转换
        可以通过display属性将块级元素和行内元素进行相互转换
        • display:block
        • display:inline
        • display:inline-block
    • 盒模型
    • 脱离标准流
      • 浮动
      • 绝对定位
      • 固定定位
    • 标准文档流
      • 空白折叠现象
        a. 多个空格会被合并成一个空格显示到浏览器页面中
        b. ​img标签换行写,会发现每张图片之间有间隙,如果在一行内写img标签,就没有间隙
      • 高矮不齐,底边对齐
        文字还有图片大小不一,都会让我们页面的元素出现高矮不齐的现象,但是在浏览器查看我们的页面总会发现底边对齐
      • 自动换行
    • 浮动与清除浮动
      • 浮动 float: none,float: left,float: right(要浮动一起浮动)
      • 特点
        • 浮动的元素脱离标准流
          元素在页面中不再占据位置,且元素不再区分行内、块级元素,都能够设置宽高
        • 浮动元素互相贴靠
        • 浮动的元素有"字围"效果
        • 浮动元素紧凑效果
          一个浮动元素。如果没有设置width,那么就自动收缩为文字的宽度
      • 清除浮动
        • 给父盒子设置高度
        • clear:both
          left:当前元素左边不允许有浮动元素
          right:当前元素右边不允许有浮动元素
          both:当前元素左右两边不允许有浮动元素​
          • 隔墙法
            给浮动元素最后面加一个空的div,并且该元素不浮动,然后设置clear:both
        • 伪元素清除法
          给浮动子元素的父盒子,也就是不浮动元素,添加一个clearfix的类
          .clearfix:after{
          content: '.';
          clear: both;
          display: block;
          }​
        • overflow:hidden
          • visible
            默认值。内容不会被修剪,会呈现在元素框之外。
          • hidden
            内容会被修剪,并且其余内容是不可见的。
          • scroll
            内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
          • auto
            如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
          • inherit
            规定应该从父元素继承 overflow 属性的值。
    • 定位
      • 相对定位
        相对于自己原来的位置定位
        • 现象和使用
          1.如果对当前元素仅仅设置了相对定位,那么与标准流的盒子什么区别。
          2.设置相对定位之后,我们才可以使用四个方向的属性: top、bottom、left、right
        • 特性
          1.不脱标
          2.形影分离
          3.老家留坑
        • 用途
          1.微调元素位置
          2.做绝对定位的参考(父相子绝)绝对定位会说到此内容。
        • 参考点
          自己原来的位置做参考点
      • 绝对定位
        • 特性
          1. 脱标
          ​2. 做遮盖效果,提成了层级
        • 参考点
          • 单独一个绝对定位的盒子
            1. 当使用top属性描述的时候 是以页面的左上角(跟浏览器的左上角区分)为参考点来调整位置
            2. 当我使用bottom属性描述的时候。是以首屏页面左下角为参考点来调整位置。
          • 以父辈盒子作为参考点
            1. 父辈元素设置相对定位,子元素设置绝对定位,那么会以父辈元素左上角为参考点,这个父辈元素不一定是爸爸,它也可以是爷爷,曾爷爷。
            2. 如果父亲设置了定位,那么以父亲为参考点。那么如果父亲没有设置定位,那么以父辈元素设置定位的为参考点
            3. 不仅仅是父相子绝,父绝子绝 ,父固子绝,都是以父辈元素为参考点
        • 父相子绝
          • 盒子居中
            position: relative;
            left: 50%;
            ​margin-left: -480px; // 父盒子宽度的的一半
      • 固定定位
        • 特性
          1.脱标 2.遮盖,提升层级 3.固定不变
        • 参考点
          设置固定定位,用top描述。那么是以浏览器的左上角为参考点
          如果用bottom描述,那么是以浏览器的左下角为参考点
    • z-index
      • 只有定位了的元素,才能有z-index
      • 从父现象
  • 相关阅读:
    Atitit alldiaryindex v1 t717 目录 1. Fix 1 2. Diary detail 1 2.1. Diary 1987---2016.12 1 2.2. Diary20
    Atitit web httphandler的实现 java python node.js c# net php 目录 1.1. Java 过滤器 servelet 1 1.2. Python的
    Atitit 网关协议cgi wsgi fcgi fastcgi 目录 1.1. CGI(common gateway unterface) 1 1.2. 2.1 WSGI: 1 1.3. 2.3
    Atitit gui的实现模式文本 dom ast 像素绘图api native 目录 1. Pl ast xml domAst 1 1.1. 简介 1 1.1.1. 【具体语法树】 2 2.
    Atitit 遍历文件夹目录解决方案与规范 attilax总结 1. 规范 2 1.1. 注意的不要同时改变文件夹内容,增删文件。这样获取到的目录list不会变化 2 1.2. 主义中文名称文件读写
    Atitit node.js自定义模块化 Function walkFileTree() exports.walkFileTree =walkFileTree 引用  Files=require
    Atitit node.js问题解决总结t99 目录 1.1. 找不到node程序 1 1.2. GBK编码问题 1 2. 按行读取gbk编码问题 2 2.1. 先写入txt utf8 encode
    Atitit io读取文件法 目录 1. 文件法 1 1.1. 异步读取文件: 1 1.2. 2.同步读取方法 1 1.3. 二进制读文件: 1 2. 读取api规范 1 3. Atitit 按照
    Atitit 按照行读取文件 目录 1.1. 类库'readline' 1 1.2. 类库C:workspacedataindexGenerNodejssdkioFileUtils.js
    Atitit sumdoc index 2019 v6 t56 .docx Atitit sumdoc index s99 目录 1. Zip ver 1 1.1. C:UsersAdminis
  • 原文地址:https://www.cnblogs.com/q1ang/p/9864743.html
Copyright © 2020-2023  润新知