css面试题一

1.继承
css的继承:就是给父级设置一些属性,子级继承了父级的该属性,这就是我们css中的继承。官方的解释,继承是一种规则,它允许样式不仅应用于特定的html标签元素,而且应用于其后代元素。
a.有继承的属性
1.字体系列属性
font:组合字体
font-family:规定元素的字体系列
font-weight:设置字体的粗细
font-size:设置字体的尺寸
font-style:定义字体的风格
2.文本系列属性
text-index:文本缩进
text-align:文本水平对齐
line-height:行高
word-spacing:增加或减少单词间的空白,即字间隙
letter-spacing:增加或减少字符间的空白,即字符间距
direction:规定文本的书写方向
color:文本颜色
3.元素的可见性
visibility
4.光标属性
cursor
5.所有元素可以继承的属性
visibility/cursor
6.内联元素可以继承的属性
字体系列属性/除text-indent,text-align之外的文本系列属性
7.块级元素可以继承的属性
text-align/text-indent
b.无继承的属性
1.display
2.文本属性
vertical-align:垂直文本对齐
text-shadow:文本阴影效果
white-space:空白符
3.盒子模型属性
width/height/margin/border/padding
4.背景属性
background/background-color/background-image/background-repeat/background-position
5.定位属性
float/clear/position/top/right/bottom/left/z-index/overflow
6.轮廓样式属性
outline
2.css预处理工具
css预处理器是一个能让你通过预处理器自己独特语法生成css的程序
- sass
- 兼容css
扩展名.scss/.sass
- less
兼容css
扩展名.less - stylus
兼容css
扩展名.styl
采用缩进语法
3.行内元素/块级元素
- 块级元素
1.总是从新的一行开始,即各个块级元素独占一行,默认垂直向下排列
2.高度,宽度,margin,padding都是可控的,设置有效
3.宽度没有设置时,默认为100%
4.块级元素中可以包含块级元素和行内元素 - 行内元素
1.和其它元素在一行,即行内元素和其它元素都会在一条水平线上排列
2.高度,宽度是不可控,设置无效,由内容决定
3.根据标签语义化的理念,行内元素最好只包含行内元素,不包含块级元素 - 转换
1.display:inline转换为行内元素
2.display:block转换为块状元素
3.display:inline-block转换为行内块状元素 - 块状元素可以继承的属性
Text-indent
Text-align
Visibility
Cursor
4.盒模型
css盒模型本质是一个盒子,封装html元素,包括margin/border/padding/content
- 标准模型
width=content - ie模型
width=border+padding+content - 自定义
Box-sizing:content-box(默认模式)
Box-sizing:border-box(ie模式) - js获取盒模型宽高
dom.style.width/height 获取行内样式的宽高
window.getComputedStyle(dom).width/height ie模式下
Dom.getBoundingClientRect().width/height 渲染后的宽高
dom.offsetWidth/offsetHeight 内容+内边距+边框不包括外边距
5.bfc块级格式化上下文
- 概念:bfc是css布局的一个概念,是一个独立的渲染区域,是一个环境,里面的元素不会影响外部的元素。
- 问题:父子元素和兄弟元素边距重叠,重叠原则取最大值,空元素的边距重叠取margin和padding的最大值
- css创建bfc,脱离文档流
1.html元素
2.浮动
3.绝对定位
4.display:inline-block
5.表格元素
6.弹性盒子
7.overflow:hidden - 使用场景
1.自适应布局,避免多列布局由于宽度计算四舍五入换行
2.避免元素被浮动元素覆盖
3.父元素高度包含子浮动元素,清除内部浮动
4.去除边距重叠,分别属于不同的bfc
6.ifc行内格式化上下文
1.内部的box会在水平方向,一个接一个的放置
2.这些box的水平方向的margin/border/padding都有效
3.对齐方式line-height/vertical-align
css面试题一的更多相关文章
- 前端Html和Css面试题
前端Html和Css面试题Html篇:1.你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么? IE: trident内核 Firefox:gecko内核 Safari:webkit内核 Ope ...
- 一道灵活的css笔试题
今天在网上看到一css笔试题,乍一看很简单,实则内部暗藏玄机,题目大概是:九宫格,每格长宽50px,边框宽度5px,鼠标经过边框变红,效果如下: 鼠标路过时: 以下是代码(如有不足之处望多加指正) & ...
- 2019前端面试系列——CSS面试题
盒模型 /* 红色区域的大小是多少?200 - 20*2 - 20*2 = 120 */ .box { width: 200px; height: 200px; padding: 20px; marg ...
- CSS面试题&知识点汇总
问题&答案 介绍一下标准的CSS的盒子模型?低版本IE的盒子模型有什么不同的? 有两种, IE 盒子模型.W3C 盒子模型: 盒模型: 内容(content).填充(padding).边界(m ...
- css面试题汇总 (持续更新)
前言:这篇随笔是为了准备后面的面试而整理的,网上各种面试题太多了,但是我感觉很多太偏了,而且实际开发过程中并不会遇到,因此这里我整理一些比较常用的,或者是相对比较重要的知识点,每个知识点都会由浅入深, ...
- HTML css面试题
1.对WEB标准以及W3C的理解与认识 标签闭合.标签小写.不乱嵌套.提高搜索机器人搜索几率.使用外链css和js脚本.结构行为表现的分离.文件下载与页面速度更快.内容能被更多的用户所访问.内容能被更 ...
- 【css面试题】三个DIV要求水平对齐,左右两个DIV宽度固定为100px,中间那个DIV充满剩余的宽度(至少2种方法)
这是我在一家公司面试时遇到的问题,当时没有答上来!! 所以看到的小伙伴一定要注意了!! 变化浏览器宽度可看到效果: 左 右 中 然后我们来看看代码: 第一种方法:(浮动) <style type ...
- 记一道css面试题 : 三栏布局两边宽度固定,中间宽度自适应,并且布局随屏幕大小改变。
前几天面试时有道css题没做出来,回来好好学习一番后把其记录下来. 题目是这样的:左中右三栏布局,左右两栏宽度固定,左右两栏的宽度为200像素,中间栏宽度自适应.当屏幕小于600px时,3栏会分别占用 ...
- CSS面试题
1.有哪些方式可以对一个DOM设置它的CSS样式? 外部样式表.引入一个外部CSS文件: 内部样式表.将CSS代码放在<head>标签内部: 内联样式,将CSS样式直接定义在HTML元素内 ...
- CSS笔试题
如何实现移动端9宫格 如何实现移动端下列8宫格 实现移动端图片画廊CSS样式 写一个简单的animation的css动画 美化select,radio,range样式,只需考虑谷歌浏览器,下面给出的是 ...
随机推荐
- 【GPT-4理论篇-1】GPT-4核心技术探秘
前言 GPT-4已经发布有一段时间了,但是出于安全性等各种原因,OpenAI并没有公布GPT-4的技术细节和代码,而是仅仅给出了一个长达100页的技术报告[1]. 这个技术报告着重介绍了GPT-4的强 ...
- Kubernetes(k8s)定时任务:CronJob
目录 一.系统环境 二.前言 三.Kubernetes CronJob简介 四.kubernetes CronJob和Linux crontab对比 五.CronJob表达式语法 六.创建CronJo ...
- OSI7层模型和TCP/IP模型
前言 在计算机网络领域中,OSI7层模型和TCP/IP模型是两个重要的概念.本文将对这两个模型进行介绍和比较,让大家了解它们的区别和联系. 目录 前言 OSI7层模型 TCP/IP模型 OSI7层模型 ...
- MySql InnoDB 存储引擎表优化
一.InnoDB 表存储优化 1.OPTIMIZE TABLE 适时的使用 OPTIMIZE TABLE 语句来重组表,压缩浪费的表空间.这是在其它优化技术不可用的情况下最直接的方法.OPTIMIZE ...
- chatgpt入口,免费在线chatgpt--与人工智能聊天?尝试chatgpt入口,免费在线chatgpt吧!
介绍一款人工智能聊天机器人--chatgpt入口 chatgpt是一款智能聊天机器人,它能够与人类进行自然语言对话,可以回答问题.提供建议,还可以玩游戏和聊天互动,是当前最受欢迎的人工智能聊天工具之一 ...
- JetBrain学信网注册(Clion)
一.打开网站 首先打开JetBrains关于学生认证的网站:https://www.jetbrains.com/shop/eform/students,可以看见以下页面: 二.人工验证 人工验证适合于 ...
- 从Kafka中学习高性能系统如何设计
1 前言 相信各位小伙伴之前或多或少接触过消息队列,比较知名的包含Rocket MQ和Kafka,在京东内部使用的是自研的消息中间件JMQ,从JMQ2升级到JMQ4的也是带来了性能上的明显提升,并且J ...
- AI-3线性回归
3.1笔记 线性回归假设y与多个x之间的关系是线性的,且噪声符合正态分布. 线性模型则是对输入特征做仿射变换Y^ = W * X+b,其中Y^为预测值,我们希望预测值与真实值Y的误差最小.那如何衡量这 ...
- Task Execution and Scheduling In SpringBoot
开天辟地 Task Execution and Scheduling In the absence of an Executor bean in the context, Spring Boot au ...
- WakaTime Readme Stats-开源项目翻译
寻找不同语言和地区的翻译 #23 Readme中添加了功能标志的开发指标 眼前一亮的Readme统计数据 你是早起的还是夜间的? 你一天中什么时候工作效率最高? 你用什么语言编写代码? 让我们在你的个 ...