HTML5、CSS3面试题(二)

上一章:HTML5、CSS3面试题(一)

哪些是块级元素那些是行内元素,各有什么特点 ?(必会)

行内元素: a、span、b、img、strong、input、select、lable、em、button、textarea 、selecting
块级元素:div、ul、li、dl、dt、dd、p、h1-h6、blockquote、form
行内、块级元素区别
1、块级元素会独占一行,其宽度自动填满其父元素宽度行内元素不会独占一行,相邻的行
内元素会排列在同一行里,知道一行排不下,才会换行,其宽度随元素的内容而变化
2、一般情况下,块级元素可以设置 width,height 属性,行内元素设置 width, height 无效
(注意:块级元素即使设置了宽度,仍然是独占一行的)
3、块级元素可以设置 margin 和 padding 行内元素的水平方向的
padding-left,padding-right,margin-left,margin-right 都产生边距效果,但是竖直方向的
padding-top,padding-bottom,margin-top,margin-bottom 都不会产生边距效果。(水平方向有效,
竖直方向无效

CSS 中选择器的优先级以及 CSS 权重如何计算?(必会)

!Important>行内样式>ID 选择器>类选择器>标签>通配符>继承>浏览器默认属性
权重
CSS 权重是由四个数值决定,看一张图比较好解释:
第一等:内联样式,如:style="color:red;",权值为 1000.(该方法会造成 css 难以管理,
所以不推荐使用)
第二等:ID 选择器,如:#header,权值为 0100
第三等:类、伪类、属性选择器如:.bar, 权值为 0010
第四等:标签、伪元素选择器,如:div ::first-line 权值为 0001
最后把这些值加起来,再就是当前元素的权重了
其他:
无条件优先的属性只需要在属性后面使用!important。它会覆盖页面内任何位置定义的元素样式。
(ie6 支持上有些 bug)
通配符,子选择器,相邻选择器等。如*,>,+, 权值为 0000.
继承的样式没有权值
CSS 权重计算方式
计算选择符中的 ID 选择器的数量(=a)
计算选择符中类、属性和伪类选择器的数量(=b)
第 34 页 共 348 页 计算选择符中标签和伪元素选择器的数量(=c)
忽略全局选择器
在分别计算 a、b、c 的值后,按顺序连接 abc 三个数字组成一个新的数字,改值即为所计算的选
择符的权重。如果两个选择符的计算权重值相同,则采取“就近原则”。
示例:
div#app.child[name="appName"] /a=1,b=2,c=1 —>权重 = 1 + 100 + 10 +10 = 121/

12、CSS 选择器有哪些?哪些属性可以继承?(必会)

CSS 选择器:
1、id 选择器( # myid)
2、类选择器(.myclassname)
3、标签选择器(div, h1, p)
4、相邻选择器(h1 + p)
5、子选择器(ul > li)
6、后代选择器(li a)
7、通配符选择器( * )
8、属性选择器(a[rel = "external"])
9、伪类选择器(a:hover, li:nth-child)
继承问题:
可继承的样式: font-size font-family color, UL LI DL DD DT;
不可继承的样式:border padding margin width height ;

HTML5 的离线存储怎么使用,工作原理是什么?(必会)

在用户没有与因特网连接时,可以正常访问站点或应用,在用户与因特网连接时,更新用
户机器上的缓存文件
原理: HTML5 的离线存储是基于一个新建的.appcache 文件的缓存机制(不是存储技术),
通过这个文件上的解析清单离线存储资源,这些资源就会像 cookie 一样被存储了下来。之
后当网络在处于离线状态下时,浏览器会通过被离线存储的数据进行页面展示
如何使用:
1、页面头部像下面一样加入一个 manifest 的属性;
2、在 cache.manifest 文件的编写离线存储的资源;
3、在离线状态时,操作 window.applicationCache 进行需求实现

说说你对语义化的理解?列举 5 个语义化的标签?(必 会)

1、去掉或样式丢失的时候能让页面呈现清晰的结构:HTML 本身是没有表现的,我们看到
例如<h1>是粗体,字体大小 2em,加粗;<strong>是加粗的,不要认为这是 HTML
的表现,这些其实 HTML 默认的 CSS 样式在起作用,所以去掉或样式丢失的时候能让
页面呈现清晰的结构不是语义化的 HTML 结构的优点,但是浏览器都有有默认样式,默
认样式的目的也是为了更好的表达 HTML 的语义,可以说浏览器的默认样式和语义化的 HTML 结
构是不可分割的
2、屏幕阅读器(如果访客有视障)会完全根据你的标记来“读”你的网页
3、PDA、手机等设备可能无法像普通电脑的浏览器一样来渲染网页(通常是因为这些设备
对 CSS 的支持较弱)
4、有利于 SEO:和搜索引擎建立良好沟通,有助于爬虫抓取更多的有效信息:爬虫依赖于
标签来确定上下文和各个关键字的权重
5、便于团队开发和维护,语义化更具可读性,是下一步吧网页的重要动向,遵循 W3C 标
准的团队都遵循这个标准,可以减少差异化
常见的语义化标签
<header>元素描述了文档的头部区域标签定义导航链接的部分
<section> 标签定义文档中的节(section、区段)。比如章节、页眉、页脚或文档中的其
他部分
<article> 标签定义独立的内容
<aside> 标签定义页面主区域内容之外的内容(比如侧边栏)
<footer> 元素描述了文档的底部区域

列举 5 个以上的 H5 事件?(必会)

H5 事件
onblur:当失去焦点时运行脚本
onchange:当元素改变时运行脚本
onclick:当单击鼠标时运行脚本
ondrop:当被拖动元素正在被拖放时运行脚本
onended:当媒体已抵达结尾时运行脚本
onerror:当在元素加载期间发生错误时运行脚本
onfocus:当获得焦点时运行脚本
oninput:当元素获得用户输入时运行脚本
onkeydown:当按下按键时运行脚本(还没松开时就触发)
onkeypress:当按下按键时运行脚本(还没松开时就触发)
onkeyup:当松开按键时运行脚本(松开时即触发)
onload:当加载时运行脚本
onmousedown: 当按下鼠标按钮时运行脚本
onmousemove:当鼠标指针移动时运行脚本
onmouseout:当鼠标指针移出元素时运行脚本
onmouseover:当鼠标指针移至元素之上时运行脚本
onmouseup:当松开鼠标按钮时运行脚本

CSS 单位中 px、em 和 rem 的区别?(必会)

1、px 像素(Pixel)。绝对单位。像素 px 是相对于显示器屏幕分辨率而言的,是一
个虚拟长度单位,是计算机系统的数字化图像长度单位
2、em 是相对长度单位,相对于当前对象内文本的字体尺寸。如当前对行内文本的字
体尺寸未被人为设置,则相对于浏览器的默认字体尺寸。它会继承父级元素的字体大
小,因此并不是一个固定的值
3、rem 是 CSS3 新增的一个相对单位(root em,根 em),使用 rem 为元素设定字
体大小时,仍然是相对大小,但相对的只是 HTML 根元素
4、区别:
IE 无法调整那些使用 px 作为单位的字体大小,而 em 和 rem 可以缩放,rem
相对的只是 HTML 根元素。这个单位可谓集相对大小和绝对大小的优点于一身,通
过它既可以做到只修改根元素就成比例地调整所有字体大小,又可以避免字体大小逐
层复合的连锁反应。目前,除了 IE8 及更早版本外,所有浏览器均已支持 rem

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络设计核心思想

大家好&#xff0c;我是大师兄&#xff0c;本篇主要是对计算机网络一些核心思想理解&#xff0c;属于内功心法&#xff0c;初学者适合入门&#xff0c;非初学者可以学习其设计思想&#xff0c;总之希望帮助大家提高对网络的理解&#xff1b; 深入浅出Linux网络硬核指南 本系列从…

基于机器学习的人脸识别算法的设计与实现

概要 人脸识别技术是一种新型的生物特征认证技术。人脸识别技术也是一个非常活跃的研究领域&#xff0c;涵盖了许多领域&#xff0c;例如数字图像处理。随着人们对应用程序需求的增长&#xff0c;面部识别技术趋向于大量使用&#xff0c;使用微芯片和标准化。人脸检测是快速准确…

【idea】查看spring源代码没有注释

问题描述 点击类&#xff08;如&#xff1a;AnnotationConfigApplicationContext &#xff09;看到的没有注释 看到有&#xff1a; Decompiled .class file, bytecode version: 52.0 (java 8) 翻译过来是&#xff1a;解压.class文件&#xff0c;字节码版本&#xff1a;52.0…

Monorepo 解决方案 — 基于 Bazel 的 Xcode 性能优化实践

背景介绍 书接上回《Monorepo 解决方案 — Bazel 在头条 iOS 的实践》&#xff0c;在头条工程切换至 Bazel 构建系统后&#xff0c;为了支持用户使用 Xcode 开发的习惯&#xff0c;我们使用了开源项目 Tulsi 作为生成工具&#xff0c;用于将 Bazel 工程转换为 Xcode 工程。但是…

深入浅出:Objective-C中使用MWFeedParser下载豆瓣RSS

摘要 本文旨在介绍如何在Objective-C中使用MWFeedParser库下载豆瓣RSS内容&#xff0c;同时展示如何通过爬虫代理IP技术和多线程提高爬虫的效率和安全性。 背景 随着信息量的激增&#xff0c;爬虫技术成为了获取和处理大量网络数据的重要手段。Objective-C作为一种成熟的编程…

Gin框架 源码解析

https://zhuanlan.zhihu.com/p/136253346 启动 因为 gin 的安装教程已经到处都有了&#xff0c;所以这里省略如何安装&#xff0c; 建议直接去 github 官方地址的 README 中浏览安装步骤&#xff0c;顺便了解 gin 框架的功能。https://github.com/gin-gonic/gin 最简单的代码…

政安晨:【深度学习处理实践】(七)—— 文本数据预处理

咱们接着这个系列的上一篇文章继续&#xff1a; 政安晨&#xff1a;【深度学习处理实践】&#xff08;六&#xff09;—— RNN的高级用法https://blog.csdn.net/snowdenkeke/article/details/136660644 在深度学习中&#xff0c;文本数据预处理是指将原始文本数据转换为可供模…

腾讯云轻量服务器地域选择教程,2024最新地域选择攻略

腾讯云服务器地域怎么选择&#xff1f;不同地域之间有什么区别&#xff1f;腾讯云哪个地域好&#xff1f;地域选择遵循就近原则&#xff0c;访客距离地域越近网络延迟越低&#xff0c;速度越快。腾讯云百科txybk.com告诉大家关于地域的选择还有很多因素&#xff0c;地域节点选择…

【STL】set容器、pair队组与map容器

目录 1.修改set容器排序规则 2. set容器的各种函数 3.set构造函数multiset 4.创建pair队组 5.map容器 1.修改set容器排序规则 set容器会自动以升序的方式进行排序&#xff0c;想要改变可以制定排序规则&#xff0c;set<int,排序规则> s&#xff1b; 但需要注意&am…

整型变量的原子操作

什么是原子操作 原子操作&#xff08;Atomic Operation&#xff09;是指不可中断的操作&#xff0c;即在多线程环境下&#xff0c;当一个线程在执行原子操作时&#xff0c;不会被其他线程的调度和中断所影响。这种操作在多线程编程中尤为重要&#xff0c;因为它能保证操作的原…

基于单片机的公交车IC卡操作系统的设计

目 录 摘 要 III Abstract IV 前 言 1 第一章 绪论 2 1.1 设计的背景和意义 2 1.2 设计的现状和发展 2 1.3 设计的目的与意义 2 第二章 总体设计 4 2.1 总体方案的设计与实现 4 2.1.1 主要设计的内容 4 2.1.2 系统的总体设计 4 2.2 系统方案论证 5 2.2.1 单片机的选择 6 2.2.2…

冒泡排序,详详解解

目录 基本概念&#xff1a; 上图&#xff1a; 核心思路&#xff1a; 基本步骤&#xff1a; 关键&#xff1a; 代码核心&#xff1a; 补充&#xff1a; 代码&#xff08;规范&#xff09; &#xff1a; 代码&#xff08;优化&#xff09;&#xff1a; 今天我们不刷力扣了&…