html的基础 理论

本篇文章给大家分享的是关于html基础 理论知识,内容很不错,有感兴趣的朋友可以看一下

HTML

语义化

HTML标签的语义化是指:通过使用包含语义的标签(如h1-h6)恰当地表示文档结构

css命名的语义化是指:为html标签添加有意义的class

为什么需要语义化:

立即学习“前端免费学习笔记(深入)”;

去掉样式后页面呈现清晰的结构

盲人使用读屏器更好地阅读

搜索引擎更好地理解页面,有利于收录

便团队项目的可持续运作及维护

简述一下你对HTML语义化的理解?

用正确的标签做正确的事情。

html语义化让页面的内容结构化,结构更清晰,便于对浏览器、搜索引擎解析;

即使在没有样式CSS情况下也以一种文档格式显示,并且是容易阅读的;

搜索引擎的爬虫也依赖于HTML标记来确定上下文和各个关键字的权重,利于SEO;

使阅读源代码的人对网站更容易将网站分块,便于阅读维护理解

Doctype作用?标准模式与兼容模式各有什么区别?

声明位于位于HTML文档中的第一行,处于 标签之前。告知浏览器的解析器用什么文档标准解析这个文档。DOCTYPE不存在或格式不正确会导致文档以兼容模式呈现

标准模式的排版 和JS运作模式都是以该浏览器支持的最高标准运行。在兼容模式中,页面以宽松的向后兼容的方式显示,模拟老式浏览器的行为以防止站点无法工作

HTML5 为什么只需要写 ?

HTML5 不基于 SGML,因此不需要对DTD进行引用,但是需要doctype来规范浏览器的行为(让浏览器按照它们应该的方式来运行)

而HTML4.01基于SGML,所以需要对DTD进行引用,才能告知浏览器文档所使用的文档类型

行内元素有哪些?块级元素有哪些? 空(void)元素有那些?

行内元素有:a b span img input select strong(强调的语气)

块级元素有:p ul ol li dl dt dd h1 h2 h3 h4…p

常见的空元素:


html的基础 理论

页面导入样式时,使用link和@import有什么区别?

link属于XHTML标签,除了加载CSS外,还能用于定义RSS,定义rel连接属性等作用;而@importCSS提供的,只能用于加载CSS

页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面被加载完再加载

importCSS2.1 提出的,只在IE5以上才能被识别,而linkXHTML标签,无兼容问题

介绍一下你对浏览器内核的理解?

主要分成两部分:渲染引擎(layout engineerRendering Engine)和JS引擎

渲染引擎:负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入CSS等),以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。所有网页浏览器、电子邮件客户端以及其它需要编辑、显示网络内容的应用程序都需要内核

JS引擎则:解析和执行javascript来实现网页的动态效果

最开始渲染引擎和JS引擎并没有区分的很明确,后来JS引擎越来越独立,内核就倾向于只指渲染引擎

常见的浏览器内核有哪些?

Trident内核:IE,MaxThon,TT,The World,360,搜狗浏览器等。[又称MSHTML]

Gecko内核:Netscape6及以上版本,FF,MozillaSuite/SeaMonkey

Presto内核:Opera7及以上。      [Opera内核原为:Presto,现为:Blink;]

Webkit内核:Safari,Chrome等。   [ ChromeBlinkWebKit的分支)]

html5有哪些新特性、移除了那些元素?如何处理HTML5新标签的浏览器兼容问题?如何区分 HTML 和 HTML5?

HTML5 现在已经不是 SGML 的子集,主要是关于图像,位置,存储,多任务等功能的增加

绘画 canvas

用于媒介回放的 video 和 audio 元素

本地离线存储 localStorage 长期存储数据,浏览器关闭后数据不丢失

sessionStorage 的数据在浏览器关闭后自动删除

语意化更好的内容元素,比如 article、footer、header、nav、section

表单控件,calendar、date、time、email、url、search

新的技术webworker, websocket, Geolocation

移除的元素:

纯表现的元素:basefont,big,center,font, s,strike,tt,u

对可用性产生负面影响的元素:frame,frameset,noframes

支持HTML5新标签:

IE8/IE7/IE6支持通过document.createElement方法产生的标签

可以利用这一特性让这些浏览器支持HTML5新标签

浏览器支持新标签后,还需要添加标签默认的样式

当然也可以直接使用成熟的框架、比如html5shim

如何区分HTML5: DOCTYPE声明新增的结构元素功能元素

HTML5的离线储存怎么使用,工作原理能不能解释一下?

在用户没有与因特网连接时,可以正常访问站点或应用,在用户与因特网连接时,更新用户机器上的缓存文件

原理:HTML5的离线存储是基于一个新建的.appcache文件的缓存机制(不是存储技术),通过这个文件上的解析清单离线存储资源,这些资源就会像cookie一样被存储了下来。之后当网络在处于离线状态下时,浏览器会通过被离线存储的数据进行页面展示

如何使用:

页面头部像下面一样加入一个manifest的属性;

在cache.manifest文件的编写离线存储的资源

在离线状态时,操作window.applicationCache进行需求实现

CACHE MANIFEST    #v0.11    CACHE:    js/app.js    css/style.css    NETWORK:    resourse/logo.png    FALLBACK:    / /offline.html

浏览器是怎么对HTML5的离线储存资源进行管理和加载的呢?

在线的情况下,浏览器发现html头部有manifest属性,它会请求manifest文件,如果是第一次访问app,那么浏览器就会根据manifest文件的内容下载相应的资源并且进行离线存储。如果已经访问过app并且资源已经离线存储了,那么浏览器就会使用离线的资源加载页面,然后浏览器会对比新的manifest文件与旧的manifest文件,如果文件没有发生改变,就不做任何操作,如果文件改变了,那么就会重新下载文件中的资源并进行离线存储。

离线的情况下,浏览器就直接使用离线存储的资源。

请描述一下 cookies,sessionStorage 和 localStorage 的区别?

cookie是网站为了标示用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)

cookie数据始终在同源的http请求中携带(即使不需要),记会在浏览器和服务器间来回传递

sessionStoragelocalStorage不会自动把数据发给服务器,仅在本地保存

存储大小:

cookie数据大小不能超过4k

sessionStoragelocalStorage虽然也有存储大小的限制,但比cookie大得多,可以达到5M或更大

有期时间:

localStorage 存储持久数据,浏览器关闭后数据不丢失除非主动删除数据

sessionStorage  数据在当前浏览器窗口关闭后自动删除

cookie  设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭

iframe有那些缺点?

iframe会阻塞主页面的Onload事件

搜索引擎的检索程序无法解读这种页面,不利于SEO

iframe和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载

使用iframe之前需要考虑这两个缺点。如果需要使用iframe,最好是通过javascript动态给iframe添加src属性值,这样可以绕开以上两个问题

Label的作用是什么?是怎么用的?

label标签来定义表单控制间的关系,当用户选择该标签时,浏览器会自动将焦点转到和标签相关的表单控件

HTML5的form如何关闭自动完成功能?

给不想要提示的 form 或某个 input 设置为 autocomplete=off。

如何实现浏览器内多个标签页之间的通信? (阿里)

WebSocket、SharedWorker

也可以调用localstorge、cookies等本地存储方式

webSocket如何兼容低浏览器?(阿里)

Adobe Flash Socket 、

ActiveX HTMLFile (IE) 、

基于 multipart 编码发送 XHR 、

基于长轮询的 XHR

页面可见性(Page Visibility API) 可以有哪些用途?

通过 visibilityState 的值检测页面当前是否可见,以及打开网页的时间等;

在页面被切换到其他后台进程的时候,自动暂停音乐或视频的播放

如何在页面上实现一个圆形的可点击区域?

map+area或者svg

border-radius

纯js实现 需要求一个点在不在圆上简单算法、获取鼠标坐标等等

实现不使用 border 画出1px高的线,在不同浏览器的标准模式与怪异模式下都能保持一致的效果

网页验证码是干嘛的,是为了解决什么安全问题

区分用户是计算机还是人的公共全自动程序。可以防止恶意破解密码、刷票、论坛灌水

有效防止黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试

title与h1的区别、b与strong的区别、i与em的区别?

title属性没有明确意义只表示是个标题,H1则表示层次明确的标题,对页面信息的抓取也有很大的影响

strong是标明重点内容,有语气加强的含义,使用阅读设备阅读网络时:会重读,而是展示强调内容

i内容展示为斜体,em表示强调的文本

页面导入样式时,使用 link 和 @import 有什么区别?

link 属于HTML标签,除了加载CSS外,还能用于定 RSS等;@import 只能用于加载CSS

页面加载的时,link 会同时被加载,而 @import 引用的 CSS 会等到页面被加载完再加载

@import 只在 IE5 以上才能被识别,而 link 是HTML标签,无兼容问题

介绍一下你对浏览器内核的理解?

浏览器内核主要分为两部分:渲染引擎(layout engineer 或 Rendering Engine) 和 JS引擎

渲染引擎负责取得网页的内容进行布局计和样式渲染,然后会输出至显示器或打印机

JS引擎则负责解析和执行JS脚本来实现网页的动态效果和用户交互

最开始渲染引擎和JS引擎并没有区分的很明确,后来JS引擎越来越独立,内核就倾向于只指渲染引擎

常见的浏览器内核有哪些?

Blink内核:新版 Chrome、新版 Opera

Webkit内核:Safari、原Chrome

Gecko内核:FireFox、Netscape6及以上版本

Trident内核(又称MSHTML内核):IE、国产浏览器

Presto内核:原Opera7及以上

HTML5有哪些新特性?

新增选择器 document.querySelector、document.querySelectorAll

拖拽释放(Drag and drop) API

媒体播放的 video 和 audio

本地存储 localStorage 和 sessionStorage

离线应用 manifest

桌面通知 Notifications

语意化标签 article、footer、header、nav、section

增强表单控件 calendar、date、time、email、url、search

地理位置 Geolocation

多任务 webworker

全双工通信协议 websocket

历史管理 history

跨域资源共享(CORS) Access-Control-Allow-Origin

页面可见性改变事件 visibilitychange

跨窗口通信 PostMessage

Form Data 对象

绘画 canvas

HTML5移除了那些元素?

纯表现的元素:basefont、big、center、font、s、strike、tt、u

对可用性产生负面影响的元素:frame、frameset、noframes

如何处理HTML5新标签的浏览器兼容问题?

通过 document.createElement 创建新标签

使用垫片 html5shiv.js

如何区分 HTML 和 HTML5?

DOCTYPE声明、新增的结构元素、功能元素

HTML5的离线储存工作原理能不能解释一下,怎么使用?

HTML5的离线储存原理:

用户在线时,保存更新用户机器上的缓存文件;当用户离线时,可以正常访离线储存问站点或应用内容

HTML5的离线储存使用:

在文档的 html 标签设置 manifest 属性,如 manifest=”/offline.appcache”

在项目中新建 manifest 文件,manifest 文件的命名建议:xxx.appcache

在 web 服务器配置正确的 MIME-type,即 text/cache-manifest

浏览器是怎么对HTML5的离线储存资源进行管理和加载的?

在线的情况下,浏览器发现 html 标签有 manifest 属性,它会请求 manifest 文件

如果是第一次访问app,那么浏览器就会根据 manifest 文件的内容下载相应的资源并且进行离线存储

如果已经访问过app且资源已经离线存储了,浏览器会对比新的 manifest 文件与旧的 manifest 文件,如果文件没有发生改变,就不做任何操作。如果文件改变了,那么就会重新下载文件中的资源并进行离线存储

离线的情况下,浏览器就直接使用离线存储的资源。

iframe 有那些优点和缺点?

优点:

用来加载速度较慢的内容(如广告)

可以使脚本可以并行下载

可以实现跨子域通信

缺点:

iframe 会阻塞主页面的 onload 事件

无法被一些搜索引擎索识别

会产生很多页面,不容易管理

label 的作用是什么?怎么使用的?

label标签来定义表单控件的关系:

当用户选择label标签时,浏览器会自动将焦点转到和label标签相关的表单控件上

使用方法1:

使用方法2:

如何实现浏览器内多个标签页之间的通信?

iframe + contentWindow

postMessage

SharedWorker(Web Worker API)

storage 事件(localStorge API)

WebSocket

webSocket 如何兼容低浏览器?

Adobe Flash Socket

ActiveX HTMLFile (IE)

基于 multipart 编码发送 XHR

基于长轮询的 XHR

页面可见性(Page Visibility API) 可以有哪些用途?

在页面被切换到其他后台进程的时候,自动暂停音乐或视频的播放

当用户浏览其他页面,暂停网站首页幻灯自动播放

完成登陆后,无刷新自动同步其他页面的登录状态

title 与 h1 的区别、b 与 strong 的区别、i 与 em 的区别?

title 表示是整个页面标题,h1 则表示层次明确的标题,对页面信息的抓取有很大的影响

strong 标明重点内容,有语气加强的含义,使用阅读设备阅读网络时,strong 会重读,而 b

是展示强调内容

i 内容展示为斜体,em 表示强调的文本

自然样式标签:b, i, u, s, pre

语义样式标签:strong, em, ins, del, code

应该准确使用语义样式标签, 但不能滥用。如果不能确定时,首选使用自然样式标签

相关推荐:

几个HTML基础知识点

在前端中的html基础知识

html基础图像知识详解

以上就是html的基础 理论的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1545985.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月21日 17:44:13
基于 HTML5 Canvas 实现的文字动画特效
下一篇 2025年12月21日 17:44:26

相关推荐

  • 修复Django电商项目中AJAX过滤产品列表图片不显示问题

    在Django电商项目中,当使用AJAX动态加载过滤后的产品列表时,常遇到图片无法正常显示的问题。这通常是由于前端模板中图片加载方式(如data-setbg属性结合JavaScript库)与AJAX动态内容更新机制不兼容所致。解决方案是直接在AJAX返回的HTML中使用标准的标签来渲染图片,确保浏览…

    2026年5月10日
    000
  • 怎么在PHP代码中实现图片上传功能_PHP图片上传功能实现与安全处理教程

    首先创建含enctype的HTML表单,再用PHP接收文件,检查目录、移动临时文件,验证类型与大小,生成唯一文件名,并调整php.ini限制以确保上传成功。 如果您尝试在PHP项目中添加图片上传功能,但服务器无法正确接收或保存文件,则可能是由于表单配置、文件处理逻辑或安全限制的问题。以下是实现该功能…

    2026年5月10日
    100
  • HTML如何隐藏滚动条或去除滚动条

    滚动条可以存在也可以不存在,本文主要介绍了html 隐藏滚动条和去除滚动条的方法的相关资料,大家一起来学习一下html隐藏滚动条或去除滚动条的方法吧。 1. html 标签加属性 XML/HTML Code复制内容到剪贴板 2.body中加入以下代码 立即学习“前端免费学习笔记(深入)”; html…

    用户投稿 2026年5月10日
    000
  • vscode上怎么运行html_vscode上运行html步骤【指南】

    首先保存文件为.html格式,再通过浏览器或Live Server插件打开预览;推荐安装Live Server实现本地服务器运行与实时刷新,提升开发体验。 在 VS Code 上运行 HTML 文件并不需要复杂的配置,只需几个简单步骤即可预览页面效果。VS Code 本身是一个代码编辑器,不直接运行…

    2026年5月10日
    100
  • 修复点击时按钮抖动:CSS垂直对齐实践

    本文探讨了在Web开发中,交互式按钮(如播放/暂停按钮)在点击时发生意外垂直位移的问题。通过分析CSS样式变化对元素布局的影响,我们发现这是由于按钮不同状态下的边框样式和内边距改变,以及默认的垂直对齐行为共同作用所致。核心解决方案是利用CSS的vertical-align属性,将其设置为middle…

    2026年5月10日
    000
  • 页面中文本域的值怎么设置

    标签定义多行的文本输入控件。 文本区中可容纳无限数量的文本,其中的文本的默认字体是等宽字体(通常是 Courier)。 可以通过 cols 和 rows 属性来规定 textarea 的尺寸,不过更好的办法是使用 CSS 的 height 和 width 属性。 注释:在文本输入区内的文本行间,用 …

    2026年5月10日
    000
  • 使用 Jupyter Notebook 进行探索性数据分析

    Jupyter Notebook通过单元格实现代码与Markdown结合,支持数据导入(pandas)、清洗(fillna)、探索(matplotlib/seaborn可视化)、统计分析(describe/corr)和特征工程,便于记录与分享分析过程。 Jupyter Notebook 是进行探索性…

    2026年5月10日
    000
  • 如何在HTML中插入表单元素_HTML表单控件与输入类型使用指南

    HTML表单通过标签构建,包含action和method属性定义数据提交目标与方式,常用input类型如text、password、email等适配不同输入需求,配合label、required、placeholder提升可用性,结合textarea、select、button等控件实现完整交互,是…

    2026年5月10日
    000
  • HTML5网页如何实现手势操作 HTML5网页移动端交互的处理技巧

    首先利用原生touch事件实现滑动判断,再通过preventDefault解决滚动冲突,接着引入Hammer.js处理复杂手势,最后通过优化点击区域、避免事件冲突和增加视觉反馈提升体验。 在移动端浏览器中,HTML5网页可以通过触摸事件实现手势操作,提升用户体验。虽然原生JavaScript提供了基…

    2026年5月10日
    000
  • PHP动态生成表单输入与POST数据获取实践指南

    本教程详细阐述了如何在php中根据动态数据源(如数据库值)生成多个表单输入框,并演示了如何通过post方法准确无误地获取这些动态生成的输入值。文章强调了正确的输入框命名策略,避免了常见的命名误区,并提供了完整的代码示例,确保开发者能够高效处理动态表单数据。 动态生成表单输入 在Web开发中,我们经常…

    2026年5月10日
    000
  • JavaScript 动态菜单点击高亮效果实现教程

    本教程详细介绍了如何使用 JavaScript 实现动态菜单的点击高亮功能。通过事件委托和状态管理,当用户点击菜单项时,被点击项会高亮显示(绿色),同时其他菜单项恢复默认样式(白色)。这种方法避免了不必要的DOM操作,提高了性能和代码可维护性,确保了无论点击方向如何,功能都能稳定运行。 动态菜单高亮…

    2026年5月10日
    200
  • html5怎么画实线_HTML5用CSS border-style:solid画元素实线边框【绘制】

    可通过CSS的border-style属性设为solid添加实线边框:一、内联样式用border:2px solid #000;二、内部样式表统一设置如div{border:1px solid #333};三、外部CSS文件定义.my-box{border:3px solid red}并引入;四、单…

    2026年5月10日
    200
  • 动态更新圆形进度条:JavaScript成绩计算器集成指南

    本文档旨在指导开发者如何将JavaScript成绩计算系统与动态圆形进度条集成,实现可视化展示平均成绩。我们将详细讲解如何修改现有的JavaScript代码,使其在计算出平均分后,能够动态更新圆形进度条的进度,从而提供更直观的用户体验。本文档包含详细的代码示例和注意事项,帮助开发者轻松实现这一功能。…

    2026年5月10日
    000
  • 如何讲html和css_讲解HTML与CSS结合使用基础【基础】

    需将HTML与CSS结合使用以实现网页结构与样式的分离:HTML定义标题、段落等语义结构,CSS控制颜色、字体等外观;可通过内联样式、内部样式表或外部CSS文件引入样式,并利用类选择器和ID选择器精准应用。 如果您希望网页不仅展示内容,还能具备基本的样式和结构布局,则需要将HTML与CSS结合使用。…

    2026年5月10日
    000
  • CSS伪元素与固定背景:移动友好的实现策略

    本文深入探讨了如何利用CSS的::before伪元素、position: fixed和z-index属性,创建一种在移动设备上表现更稳定的全屏固定背景效果,以替代传统background-attachment: fixed可能存在的兼容性问题。教程将详细解析这些核心CSS概念及其在构建响应式布局中的…

    2026年5月10日
    000
  • JavaScript计算器开发:解决数值显示与初始化问题

    本教程深入探讨了使用JavaScript构建计算器时常见的数值显示异常问题,特别是由于类属性未初始化导致的`Cannot read properties of undefined`错误。我们将详细分析问题根源,并通过在构造函数中调用初始化方法来解决该问题,同时优化显示逻辑,确保计算器功能稳定且界面显…

    2026年5月10日
    000
  • 使用 Ajax 和 FormData 实现文件上传及文本数据提交的完整教程

    本文旨在解决在使用 Ajax 和 FormData 进行文件上传时,遇到的 $_POST 和 $_FILES 为空的问题。通过详细的代码示例和解释,我们将展示如何正确地构建 FormData 对象,并通过 Ajax 将文件和文本数据发送到服务器端,同时避免常见的错误配置,确保数据能够成功地被 PHP…

    2026年5月10日
    000
  • JavaScript 高效判断页面所有复选框状态的技巧与实践

    本文旨在提供一套高效且专业的javascript方法,用于判断网页中所有复选框的选中状态。我们将探讨如何利用`array.some()`快速确定是否有未选中的复选框(进而判断是否全部选中),以及如何使用`array.filter()`统计选中和未选中的复选框数量。通过优化dom元素选择和数组操作,提…

    2026年5月10日
    000
  • html标签如何读_HTML标签(语义化/结构)阅读与理解方法

    答案是掌握HTML标签的语义化含义与结构作用。理解HTML需从语义化入手,使用如article、nav、header等标签准确表达内容意义,提升可访问性、SEO和代码可维护性;阅读时应从外到内分析结构,识别页面骨架,区分语义标签与非语义标签(如div、span)的合理使用场景,避免仅凭外观选择标签,…

    2026年5月10日
    000
  • 从 JavaScript 获取 URL 并在 PHP DataGrid 中使用

    本文档旨在指导开发者如何从 JavaScript 函数中获取 URL,并将其动态应用于 PHP DataGrid。通过前端 JavaScript 动态生成 API 地址,并将其传递给后端的 PHP DataGrid,实现数据根据用户会话动态加载。 动态配置 DataGrid 的 URL 在构建动态 …

    2026年5月10日
    000

发表回复

登录后才能评论
关注微信