css面试复习

news2024/10/6 23:41:06

目录

css常用网址:

css三种书写样式

css属性 

color(如字体颜色)

text-decoration(如下划线)

text-align(文字对齐)

字体属性

font-size

font-family(字体名称)

font-weight(字体粗细)

font-style(斜体)

line-height

 font缩写属性

css常见选择器

通用选择器

简单选择器

元素选择器类选择器id选择器

属性选择器

​编辑后代选择器

兄弟选择器 

选择器组-交集/并集选择器 

伪类 

动态伪类

伪元素

::before与::after

css属性继承

css属性的层叠

块级元素与行内级元素

元素隐藏方法

overflow属性

css盒子模型


css常用网址:

 查询css是否可用,即浏览器/css版本是否兼容:

 由于浏览器版本、CSS版本等问题,查询某些CSS是否可用

CSS官方文档

css三种书写样式

1.内联/行内样式


2.内嵌样式表

放在head内部的style标签内
3.外部样式表

 通过link引入

css属性 

color(如字体颜色)

设置前景色,包括文字/装饰线/边框/外轮廓

text-decoration(如下划线)

◼ text-decoration有如下常见取值:
 none:无任何装饰线
✓ 可以去除a元素默认的下划线
 underline:下划线
 overline:上划线
 line-through:中划线(删除线

text-transform(设置文字大小写转换)

capitalize:(使...首字母大写, 资本化的意思)将每个单词的首字符变为大写
 uppercase:(大写字母)将每个单词的所有字符变为大写
 lowercase:(小写字母)将每个单词的所有字符变为小写
 none:没有任何效果

text-indent(设置缩进,常用单位em表示几个字)

text-align(文字对齐)

相对于父元素对齐

 left:左对齐
 right:右对齐
 center:正中间显示
 justify:两端对齐

letter-spacing与word-spacing设置单词/字母的间距

字体属性

font-size

1em=100%,2em=200%,0.5em=50%,此处em基于父元素的大小计算

font-family(字体名称)

设置文字字体

可以设置1个或者多个字体名称;
 浏览器会选择列表中第一个该计算机上有安装的字体;
 或者是通过 @font-face 指定的可以直接下载的字体

font-weight(字体粗细)

常见的取值:
◼ 100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 :每一个数字表示一个重量
◼ normal:等于400
◼ bold:等于700

font-style(斜体)

normal:常规显示
◼ italic(斜体):用字体的斜体显示(通常会有专门的字体)
◼ oblique(倾斜):文本倾斜显示(仅仅是让文字倾斜)

line-height

 假设div中只有一行文字,如何让这行文字在div内部垂直居中:

让line-height等同于height

 font缩写属性

font-style font-variant font-weight font-size/line-height font-family
◼ 规则:
 font-style、font-variant、font-weight可以随意调换顺序,也可以省略
 /line-height可以省略,如果不省略,必须跟在font-size后面
 font-size、font-family不可以调换顺序,不可以省略

css常见选择器

通用选择器

*

简单选择器

元素选择器


类选择器


id选择器


属性选择器

拥有某一属性或者属性等于某个值


后代选择器

直接子代必须加" > " 

兄弟选择器 

选择器组-交集/并集选择器 

伪类 

伪类是选择器的一种,它用于选择处于特定状态的元素,如hover

动态伪类

◼ 使用举例
 a:link 未访问的链接
 a:visited 已访问的链接
 a:hover 鼠标挪动到链接上(重要)
 a:active 激活的链接(鼠标在链接上长按住未松开)
◼ 使用注意
 :hover必须放在:link和:visited后面才能完全生效
 :active必须放在:hover后面才能完全生效
◼ 除了a元素,:hover、:active也能用在其他元素上

:focus指当前拥有输入焦点的元素(能接收键盘输入)
 如文本输入框一聚焦后,背景就会变红色
◼ 因为链接a元素可以被键盘的Tab键选中聚焦,所以:focus也适用于a元素
◼ 动态伪类编写顺序建议为
 :link、:visited、:focus、:hover、:active
◼ 直接给a元素设置样式,相当于给a元素的所有动态伪类都设置了
 相当于a:link、a:visited、a:hover、a:active、a:focus的color都是red

伪元素

常用的伪元素有
 :first-line、::first-line针对首行文本设置属性
 :first-letter、::first-letter针对首字母设置属性
 :before、::before
 :after、::after

为了区分伪元素和伪类,建议伪元素使用2个冒号,比如::first-line

伪元素::before与::after

用来在一个元素之前或者之后插入内容,需要content属性写插入的内容 

css属性继承

常见的font-size/font-family/font-weight/line-height/color/text-align都具有继承性;

继承过来的是计算值不是设置值

css属性的层叠

那么多个样式属性覆盖上去, 哪一个会生效呢?
 判断一: 选择器的权重, 权重大的生效, 根据权重可以判断出优先级;
 判断二: 先后顺序, 权重相同时, 后面设置的生效;

按照经验,为了方便比较CSS属性的优先级,可以给CSS属性所处的环境定义一个权值(权重)
 !important:10000
 内联样式:1000
 id选择器:100
 类选择器、属性选择器、伪类:10
 元素选择器、伪元素:1
 通配符:0

块级元素与行内级元素

CSS中有个display属性,能修改元素的显示类型,有4个常用值
 block:让元素显示为块级元素
 inline:让元素显示为行内级元素
 inline-block:让元素同时具备行内级、块级元素的特征
 none:隐藏元素
 flex

块级元素独占一行

dib可以随意设置宽高+与其他行内级元素一行显示

行内级元素不可以随意设置宽高,宽高由内容决定

行内级元素一般只能包括行内级元素,不能包括block或者dib

元素隐藏方法

◼方法一: display设置为none
 元素不显示出来, 并且也不占据位置, 不占据任何空间(和不存在一样);
◼ 方法二: visibility设置为hidden
 设置为hidden, 虽然元素不可见, 但是会占据元素应该占据的空间;
 默认为visible, 元素是可见的;
◼ 方法三: rgba设置颜色, 将a的值设置为0
 rgba的a设置的是alpha值, 可以设置透明度, 不影响子元素;
◼ 方法四: opacity设置透明度, 设置为0
 设置整个元素的透明度, 会影响所有的子元素

overflow属性

 visible:溢出的内容照样可见
 hidden:溢出的内容直接裁剪
 scroll:溢出的内容被裁剪,但可以通过滚动机制查看,会一直显示滚动条区域,滚动条区域占用的空间属于width、height
 auto:自动根据内容是否溢出来决定是否提供

行内级非替换元素

 对于行内级非替换元素来说, 设置宽高是无效的

  • 替换元素(replaced elements)
    • 元素本身没有实际内容,浏览器根据元素的类型和属性,来决定元素的具体显示内容
    • 比如img、input、iframe、video、embed、canvas、audio、object等
  • 非替换元素(non-replaced elements)
    • 和替换元素相反,元素本身是有实际内容的,浏览器会直接将其内容显示出来,而不需要根据元素类型和属性来判断到底显示什么内容
    • 比如div、p等

css盒子模型

另外我们还可以设置如下属性:
 min-width:最小宽度,无论内容多少,宽度都大于或等于min-width
 max-width:最大宽度,无论内容多少,宽度都小于或等于max-width
 移动端适配时, 可以设置最大宽度和最小宽度;
◼ 下面两个属性不常用:
 min-height:最小高度,无论内容多少,高度都大于或等于min-height
 max-height:最大高度,无论内容多少,高度都小于或等于max-heigh

padding

padding单独编写是一个缩写属性

padding-top、padding-right、padding-bottom、padding-left的简写属性
 padding缩写属性是从零点钟方向开始, 沿着顺时针转动的, 也就是上右下左;

padding并非必须是四个值, 也可以有其他值;

 border

边框相对于content/padding/margin来说特殊一些:
 边框具备宽度width;
 边框具备样式style;
 边框具备颜色color;

◼ 边框宽度

border-top-width、border-right-width、border-bottom-width、border-left-width
 border-width是上面4个属性的简写属性
◼ 边框颜色
 border-top-color、border-right-color、border-bottom-color、border-left-color
 border-color是上面4个属性的简写属性
◼ 边框样式
 border-top-style、border-right-style、border-bottom-style、border-left-style
 border-style是上面4个属性的简写属性



◼ 边框颜色、宽度、样式的编写顺序

border-radius(是上下左右四个的缩写属性)常见的值:
 数值: 通常用来设置小的圆角, 比如6px;
 百分比: 通常用来设置一定的弧度或者圆形;

如果一个元素是正方形, 设置border-radius大于或等于50%时,就会变成一个圆.

 margin

margin通常用于元素与元素之间的间距

ppt11

上下margin的传递

上下margin的折叠

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/569551.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

小黑子—MySQL数据库:第一章 -基础篇

MySQL数据库入门1.0 MySQL基础篇1. MySQL概述1.1 MySQL相关概念1.2 MySQL的安装及启动1.3 数据模型 2. SQL2.1 SQL的通用语法2.2 SQL语句的分类2.3 DDL语句2.3.1 DDL - 数据库操作2.3.2 DDL - 表操作 - 查询2.3.3 DDL - 表操作 - 创建2.3.4 DDL - 表操作 - 数据类型2.3.5 DDL -…

搭建stm32电机控制代码框架(三)——Stm32CubeMx配置ADC采样

电机控制另一个关键的模块就是ADC采样,这个模块配置的好坏决定了采样电流和电压的精准度,因此有必要对其进行深入学习。 简介: STM32 在片上集成的ADC 外设非常强大。STM32F103xC、STM32F103xD 和STM32F103xE增强型产品内嵌3个12位的ADC&am…

JDK8-JDK17中的新特性(var类型推断、模式匹配、Record、密封类)

文章目录 1. 新语法结构1.1 Java的REPL工具: jShell命令1.2 异常处理之try-catch资源关闭1.3 局部变量类型推断1.4 instanceof的模式匹配1.5 switch表达式1.6 文本块1.7 Record1.8 密封类 2. API的变化2.1 Optional类2.2 String存储结构和API变更2.3 JDK17&#xff…

vue-element-admin实践系列(二)初始化系统的页面元素

vue-element-admin实践系列 vue-element-admin实践系列(一)代码部署及运行demovue-element-admin实践系列(二)初始化系统的页面元素 文章目录 vue-element-admin实践系列1、修改默认参数1.1 修改启动端口1.2 修改网页title1.3 修改网站 ico1.4 效果如下 2、自定义左侧导航栏2.…

Fourier分析入门——第9章——Fourier系数的假设检测

目录 第9章 Fourier系数的假设检验 9.1 引言 9.2 回归分析(Regression analysis) 9.3 带限信号(Band-limited signals) 9.4 可信区间(Confidence intervals) 9.5 Fourier系数的多元(或多变量)统计分析(Mulitvariate statistical analysis of Fourier coefficients) 第9章 …

Three.js--》实现3d球形机器人模型展示

目录 项目搭建 初始化three.js基础代码 设置环境纹理 加载机器人模型 添加光阵 今天简单实现一个three.js的小Demo,加强自己对three知识的掌握与学习,只有在项目中才能灵活将所学知识运用起来,话不多说直接开始。 项目搭建 本案例还是…

(学习日记)AD学习 #4

写在前面: 由于时间的不足与学习的碎片化,写博客变得有些奢侈。 但是对于记录学习(忘了以后能快速复习)的渴望一天天变得强烈。 既然如此 不如以天为单位,以时间为顺序,仅仅将博客当做一个知识学习的目录&a…

C4D R26 渲染学习笔记 建模篇(0):建模常识

往期文章 C4D R26 渲染学习笔记(1):C4D版本选择和初始UI框介绍 C4D R26 渲染学习笔记(2):渲染流程介绍 C4D R26 渲染学习笔记(3):物体基本操作快捷键 C4D如何建模 默认…

TiDB安装简介

文章目录 一、TiDB概述1、简介2、OLAP和OLTP3、与MySQL兼容性 二、架构三、安装1、本地版安装2、单机版集群安装2.1 概述2.2 安装2.3 访问集群 3、配置文件地址 四、使用方式1、基础SQL2、历史数据查询 一、TiDB概述 官网地址 https://docs.pingcap.com/zh/tidb/stable/quick…

(浙大陈越版)数据结构 第三章 树(上) 3.2 二叉树及存储结构

目录 3.2.1 二叉树的定义及性质 定义: 二叉树五种基本形态: 特殊二叉树 二叉树的几个重要性质 二叉树的抽象数据类型定义 操作集: 常用遍历: 3.2.2 二叉树的存储结构 顺序存储结构 数组实现 链表实现 3.2.1 二叉树的定义及性质 …

RK3588平台开发系列讲解(项目篇)YOLOv5部署测试

平台内核版本安卓版本RK3588Linux 5.10Android 12文章目录 一、YOLOv5环境安装二、YOLOv5简单使用2.1、获取预训练权重文2.2、YOLOv5简单测试2.3、转换为rknn模型2.4、部署到 RK 板卡三、airockchip/yolov5简单测试3.1、转换成rknn模型并部署到板卡沉淀、分享、成长,让自己和他…

PyTorch-Transforms

目录 1. 基本知识 2. 常见的Transforms 2.1 ToTensor的使用 2.2 Normalize的使用 2.3 Resize的使用 2.4 Compose的使用 2.5 RandomCrop的使用 1. 基本知识 图片引用来自b站up主:我是土堆 tf.py(如何使用transforms里面的工具) 具体…

1 echarts与map相遇

echarts与map 版本 "echarts": "^5.1.2","echarts-gl": "^2.0.9",效果 基本方法 echarts中地图大多是以地理坐标为主,数据格式使用geojson数据格式。geojson是GIS数据格式中第二常用格式,使用GIS软件都能实现…

英文论文(sci)解读复现【NO.11】一种先进的基于深度学习模型的植物病害检测:近期研究综述

此前出了目标检测算法改进专栏,但是对于应用于什么场景,需要什么改进方法对应与自己的应用场景有效果,并且多少改进点能发什么水平的文章,为解决大家的困惑,此系列文章旨在给大家解读发表高水平学术期刊中的 SCI论文&a…

简单个人电话号码查询系统

系列文章 任务19 简单个人电话号码查询系统 文章目录 系列文章一、实践目的与要求1、目的2、要求 二、课题任务三、总体设计1.存储结构及数据类型定义2.程序结构3.所实现的功能函数 四、小组成员及分工五、 测试文件读取添加联系人删除联系人修改联系人查询联系人退出 六、源代…

(三) PID控制中的噪声过滤

在前面的章节里,我们谈到了积分环节由于执行器的物理限制导致的积分项Wind-up,通过设置饱和限幅器,选择性关闭积分环节来完成Wind-up问题。 今天我们要解决的问题就是微分环节可能存在的问题。通过传感器我们可以观测出一个被控量的大小&…

奇偶校验位

原理 奇偶校验位有两种类型:偶校验位与奇校验位。 以偶校验位来说,如果一组给定数据位中1的个数是奇数,补一个bit为1,使得总的1的个数是偶数。例:0000001, 补一个bit为1, 00000011。 以奇校验位来说,如果给…

电子科技大学编译原理复习笔记(二):数据类型

目录 前言 重点一览 引言 内部类型 内部类型的特点 内部类型的优越性 用户定义类型 ⭐超重点:六种数据类型聚合方式 ⭐抽象数据类型(重点、考点) 类型操作 类型检查 类型转换 类型等价 实现模型 本章小结 前言 本复习笔记基于…

Spark 3:Spark Core RDD持久化

RDD 的数据是过程数据 RDD 的缓存 # coding:utf8 import timefrom pyspark import SparkConf, SparkContext from pyspark.storagelevel import StorageLevelif __name__ __main__:conf SparkConf().setAppName("test").setMaster("local[*]")sc SparkC…

flask实现简易图书管理系统

项目结构 技术选型 flask 做后端, 提供数据和渲染html 暂时没有提供mysql, 后续会更新操作mysql和样式美化的版本 起一个flask服务 flask是python的一个web框架, 下面演示如何提供http接口, 并返回json数据 main.py # flask创建http接口 from flask import Flask, request, jso…