web前端入门到实战:HTML规范新内容,HTML6 真正需要的功能

HTML5 规范在 2014 年正式发布。时至今日,虽然这一规范已经引入了许多新的 API、功能和改进,但许多开发人员已经在展望下一代 HTML 规范了。

一点点背景介绍

有些人还是不知道 HTML 标准是怎样制定出来的。具体来说,一些组织提出自己的模式和协议,希望浏览器接受并使用它们;但很显然,唯一真正有话语权的组织是 W3C 。所以 W3C 来分析 Web 世界需要什么,然后他们编写并规划一些语言指南,这些指南最后将成为浏览器的标准。

早在 Internet Explorer 时代 W3C 就已经成立了,但微软其实并不关心什么标准规范,他们只是我行我素而已。这种状态一直持续到谷歌 Chrome 诞生,后者改变了游戏规则。是的,谷歌浏览器有时也不在乎标准规范,但起码它会带来一些不错的内容,那么 W3C 最后就会把这些内容塞进 HTML 标准文档里。谷歌的力量是很强大的。

HTML6 真正需要的功能

好吧,我知道其实根本就不会有所谓的 HTML6 版本。还有一件事情可能会更让你惊讶,那就是今天我们用的也不是 HTML5 标准,因为这个标准是在实时更新中的,被称为“动态标准”。现在我们正在使用的是 HTML5.2,而 Web 开发工作会关注未来将要用到的 HTML 规范。所以我们迟早有一天会进化到下一代 HTML 标准时代,但这种进化是渐进的,不会一夜之间完成。

既然如此,下面我会提出一些我希望未来的标准能实现的功能。

更多原生元素

如果我们想要使用用户设备的相机,正确的方法是先捕获视频流,然后将其显示到一个视频元素中,然后拍下一张快照,再把快照的这帧图片绘制到画布中。这听起来比我们期望的步骤要复杂不少。

在下一个 HTML 正式版本中,我们应该能够更轻松地处理更多原生组件,从而制作水平更高的的 Web 应用程序和 PWA(渐进式 Web 应用程序),最终实现史蒂夫乔布斯的梦想。

这些元素将带有自己的 API,其中一些甚至不需要 HTML 元素,如 NFC、联系人、短信或 VR 访问等。

新元素

Web 开发产业已经证明 Web 技术不仅可以用来构建网站,还可以构建复杂的 Web 应用程序和界面;因此为了更好地管理我们的 DOM,我们应该有更专门化的标签。

我们可以不用带有 id 属性的 <div> ,改为在 CSS 样式表中处理效果会更好。一些开发人员建议我们可以通过名称标签直接调用 id,但我真的不认为这是一个好主意。

<router></router>
<script>
varelement =document.getElementById(“router”);
</script>
专门建立的学习Q-q-u-n ⑦⑧④-⑦⑧③-零①②  分享学习方法和需要注意的小细节,互相交流学习,不停更新最新的教程和学习技巧(从零基础开始到WEB前端项目实战教程,学习工具,全栈开发学习路线以及规划)

其实这没什么用途,因为我们已经有了 getElementByName(),而且它会让我们区分自己的标签和 HTML 原生标签,后果会很糟糕。

vartag= document.getElementsByName(“tag”);

你之前看过相关内容的话,可能已经知道有一种方案提出了一种新的标记来处理专用的原生 html 标签,但这种方法既没什么用又很占地方,会让网站变得更加臃肿,性能却没有提升。

我的解决方案就是一如既往继续使用标签,但使用新标签来帮助响应式编程、网页设计师和开发人员创建更好的网页布局。

记住 KISS 原则,保持简单,大智若愚。

预处理器

我不是很喜欢这个东西,但很多开发人员都很喜欢它,所以它应该是个不错的功能。它能改善 Web 编码效率,即使这增加了 CPU 占用率,但很多开发人员也愿意承受这点代价。

很显然,能缩短开发时间是再好不过了。

不要只用 JavaScript

我知道至少在今天这是不可能做到的,我也根本不需要这个功能,但如果开发人员能在脚本标记中写下其他语言的名字,除了 JavaScript 还能用其他语言的话也是很不错的。

<scripttype=”text/python”>
el= dom.elementId(“Element”)
el.html(“Thislinewillbeprinted in the element”)
</script>

这将真正改变游戏规则,因为一夜之间就会有大批新人涌进 Web 开发产业,这是非常好的事情。一些 Java 开发人员也能用上他们啰哩啰嗦的语法了。

<scripttype=”text/java”>
importhtml;

classMain{
publicstaticvoidmain(String args[]){
element div = html.doc.getElementById(“element”);
div.write(“Element display text”);
}
}
</script>
专门建立的学习Q-q-u-n ⑦⑧④-⑦⑧③-零①②  分享学习方法和需要注意的小细节,互相交流学习,不停更新最新的教程和学习技巧(从零基础开始到WEB前端项目实战教程,学习工具,全栈开发学习路线以及规划)

小结

本文总结了一些未来的 HTML 真正需要的功能,这些功能可以改善 Web 开发工作,我希望起码其中的一两项功能很快就和我们见面,这样 Web 技术就能继续作为软件开发产业的表率发展下去了。

原文地址:https://blog.51cto.com/14592820/2467884

时间: 2024-10-07 15:56:09

web前端入门到实战:HTML规范新内容,HTML6 真正需要的功能的相关文章

web前端入门到实战:CSS新属性实现特殊的图片显示效果

1 概述 1.1 前言 使用一个或多个图像相关的CSS属性(background-blend-mode, mix-blend-mode, or filter)可以实现许多特殊的图片显示效果,共列举了20种图片显示效果. 2 效果列表 2.1 铅笔画效果 效果示例 SCSS代码 专门建立的学习Q-q-u-n: 784-783-012 ,分享学习的方法和需要注意的小细节,不停更新最新的教程和学习技巧 (从零基础开始到前端项目实战教程,学习工具,全栈开发学习路线以及规划) .pencil-effect

web前端入门到实战:css选择器和css文本样式相关

[文章来源微信公众号:每天学编程]---关注,后台领取编程资源 css基础-css选择器和css文本样式相关: 使用link链入外部样式,页面加载时会同时加载样式 @import url("*.css");使用导入式,页面加载完后,才会加载样式 链接伪类的顺序 :link-> :visited ->:hover-> :active 或者 : visited -> : link ->:hover-> :active 选择器的优先级: id选择器>

web前端入门到实战:纯HTML做出几个实用网页效果

在我们以往看到的页面效果中,很多效果是需要JS搭配使用的,而今天在本文中,我将介绍如何使用纯HTML打造属于自己的实用效果. 1.?**折叠手风琴** 使用Details和Summary标签可以创建没有JavaScript代码的可折叠手风琴. 效果: ? HTML <details> <summary>Languages Used</summary> <p>This page was written in HTML and CSS. The CSS was

web前端入门到实战:CSS:scroll-snap滚动事件停止及元素位置检测

一.Scroll Snap是前端必备技能 CSS Scroll Snap是个非常好用的特性,可以让网页容器滚动停止的时候,无需任何JS代码的参与,浏览器可以自动平滑定位到指定元素的指定位置.类似幻灯片广告效果就可以纯CSS实现. 而且CSS Scroll Snap的兼容性非常好,移动端几乎可以放心使用. 二.源自实际项目的scroll-snap场景 今天下午在实现一个功能需求的时候,正好遇到一个场景非常适合使用Scroll Snap来实现,滑动依次显示人物角色.于是就大胆使用了下,哇,好棒,无需

web前端入门到实战:CSS自定义属性+CSS Grid网格实现超级的布局能力

最近我还注意到的一件事就是CSS自定义属性.CSS自定义属性的工作方式有点像SASS和其他预处理器中的变量,主要的区别在于其它方法都是在浏览器中编译后生成,还是原本的CSS写法.CSS自定义属性是真正的动态变量,可以在样式表中或使用javascript即时更新,这使得它们具有更多的可能性.如果你熟悉JavaScript,我喜欢把预处理器变量和CSS自定义属性之间的区别想象成与const和let之间的区别相似--它们都有不同的用途. CSS自定义属性可以方便的实现很多功能(例如主题变化).最近我一

web前端入门到实战:把HTML转成PDF的4个方案及实现

在本文中,我将展示如何使用 Node.js.Puppeteer.headless Chrome 和 Docker 从样式复杂的 React 页面生成 PDF 文档. 背景:几个月前,一个客户要求我们开发一个功能,用户可以得到 PDF 格式的 React 页面内容.该页面基本上是患者病例的报告和数据可视化结果,其中包含许多 SVG.另外还有一些特殊的请求来操纵布局,并对 HTML 元素进行一些重新排列.因此与原始的 React 页面相比,PDF 中应该有不同的样式和额外的内容. 由于这个任务比用简

web前端入门到实战:html块级元素和行级元素的区别和认识

行内.块状元素区别: 1.行内元素与块级函数可以相互转换,通过修改display属性值来切换块级元素和行内元素,行内元素display:inline,块级元素display:block. 2.行内元素和其他行内元素都会在一条水平线上排列,都是在同一行的:块级元素却总是会在新的一行开始排列,各个块级元素独占一行,垂直向下排列,若想使其水平方向排序,可使用左右浮动(float:left/right)让其水平方向排列. 3.行内元素不可以设置宽高,宽度高度随文本内容的变化而变化,但是可以设置行高(li

web前端入门到实战:CSS 、JS实现浪漫流星雨动画

1,效果图 2,源码 HTML < body > < div class = "container" > < div id = "mask" > </ div > < div id = "sky" > </ div > < div id = "moon" > </ div > < div id = "stars&qu

web前端入门到实战:CSS单位讲解

像 px.rem.em.% 这样的长度单位大家肯定都很熟悉,前者为绝对单位,后者为相对单位.CSS3 又引入了新单位:vw.vh.vmin.vmax.下面对它们做个详细介绍. 单位 作用 特性 px 页面按精确像素展示 绝对单位 rem 相对根节点html字体大小来计算 相对单位 em 基准点为相对父节点字体的大小 相对单位 % 相对于父元素的大小设定的比率 相对单位 vw 视窗宽度的百分比,1vw代表视窗宽度的1% 视窗单位 vh 视窗高度的百分比,1vh代表视窗高度的1% 视窗单位 vmin