一、 SGML HTML XML XHTML 的区别?

  1. SGML 是标准通用标记语言,是一种定义电子文档结构和描述其内容的国际标准语言,是所有电子文档标记语言的起源。
  2. HTML 是超文本标记语言,主要是用于规定怎么显示网页。
  3. XML 是可扩展标记语言是未来网页语言的发展方向,XML 和 HTML 的最大区别就在于 XML 的标签是可以自己创建的,数量无限多, 而 HTML 的标签都是固定的而且数量有限。
  4. XHTML 也是现在基本上所有网页都在用的标记语言,他其实和 HTML 没什么本质的区别,标签都一样,用法也都一样,就是比 HTML 更严格,比如标签必须都用小写,标签都必须有闭合标签等。

二、DTD 介绍

  1. DTD( Document Type Definition 文档类型定义)是一组机器可读的规则,它们定义 XML 或 HTML 的特定版本中所有允许元 素及它们的属性和层次关系的定义。在解析网页时,浏览器将使用这些规则检查页面的有效性并且采取相应的措施。
  2. DTD 是对 HTML 文档的声明,还会影响浏览器的渲染模式(工作模式)。

. meta viewport 是做什么的?怎么写?

  • 移动端浏览器通常都在一个比屏幕更宽的虚拟窗口中渲染页面,这个虚拟窗口就是viewport,目的是正常展示没有做移动端适配的网页,可以让他们完整的展现给用户。我们有时用移动设备访问桌面版网页就会看到一个横向滚动条,这里可显示区域的宽度就是viewport的宽度。
  • <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">

该meta标签的作用是让当前viewport的宽度等于设备的宽度,同时不允许用户手动缩放。当然maximum-scale=1.0, user-scalable=0不是必需的,是否允许用户手动播放根据网站的需求来定,但把width设为width-device基本是必须的,这样能保证不会出现横向滚动条。

  • meta viewport 的6个属性:

width

设置layout viewport 的宽度,为一个正整数,或字符串”width-device”

initial-scale

设置页面的初始缩放值,为一个数字,可以带小数

minimum-scale

允许用户的最小缩放值,为一个数字,可以带小数

maximum-scale

允许用户的最大缩放值,为一个数字,可以带小数

height

设置layout viewport 的高度,这个属性并不重要,很少使用

user-scalable

是否允许用户进行缩放,值为”no”或”yes”, no 代表不允许,yes代表允许

. 你用过哪些 HTML 5 标签?

<article>

定义独立的内容

<aside>

定义页面内容之外的内容

<audio>

定义声音内容

<bdi>

定义文本的文本方向,使其脱离其周围文本的方向设置

<canvas>

定义图形

<command>

定义命令按钮

<datalist>

定义下拉列表

<details>

定义元素的细节

<embed>

定义外部交互内容或插件

<figcaption>

定义figure元素的标题

<figure>

定义媒介内容的分组,以及他们的标题

<footer>

定义section或page的页脚

<header>

定义section或page的页眉

<hgroup>

定义有关文档中的section信息

<keygen>

定义生成密钥

<mark>

定义有记号的文本

<meter>

定义预定义范围内的度量

<nav>

定义导航链接

<output>

定义输出的一些类型

<progress>

定义任何类型的任务的进度

<rp>

定义若浏览器不支持ruby元素显示的内容

<rt>

定义ruby注释的解释

<ruby>

定义ruby注释

<section>

定义section

<source>

定义媒介源

<summary>

定义details元素的标题

<time>

定义日期/时间

<track>

定义用在媒体播放器中的文本轨道

<video>

定义视频

五、 H5 是什么?

H5是HTML5的简称,就是“HTML”的第5个版本,也就是第5个版本的超文本标记语言。

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

  1. html页引用css的三种,一是页内的style标签,二是link外链;三是@import导入
  2. @import是CSS提供的语法规则,只有导入样式表的作用;link是HTML的标签,不仅可以加载CSS文件,还可以定义RSS、rel连接属性、引入网站图标等。
  3. 加载顺序区别。加载页面时,link外链的文件会与文档同步加载,而@import则是等待文档加载完成后才加载。
  4. 兼容性区别。@import是CSS 2.1才有的语法,低版本浏览器不支持;link标签没有兼容问题。
  5. DOM可控性区别。可以通过JS操作DOM,插入link标签来改变样式;由于DOM方法是基于文档的,无法使用@import的方法插入样式。

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

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

<label for="Name">Number:</label>

<input type=“text“ name="Name" id="Name"/>

八、div模拟textarea

contenteditable属性,值为布尔值,为true时可以编辑。

<div contenteditable="true">可以编辑里面的内容</div>

九、web标准及w3c的理解和认识

标签闭合、标签小写、不乱嵌套、提高搜索机器人搜索几率、使用外链 css 和 js 脚本、结构行为表现的分离,

文件下载与页面速度更快、内容能被更多的用户所访问、内容能被更广泛的设备所访问、更少的代码和组件,

容易维护、改版方便,不需要变动页面内容、提供打印版本而不需要复制内容、提高网站易用性。

十、离线缓存与传统浏览器缓存区别?

①离线缓存是针对整个应用,浏览器缓存是单个文件

②离线缓存断网了仍可以打开缓存的页面,浏览器缓存不行

③离线缓存有网也会优先使用缓存资源,但可以主动通知浏览器更新资源

前端面试题归类-HTML2的更多相关文章

  1. 前端面试题归类-css的flex相关

    Flex布局 常见父项的属性: ●flex-direction :设置主轴的方向 Row 默认值从左到右 row-reverse 从右到左 column 从上到下 column-reverse 从下到 ...

  2. 前端面试题归类-HTML1

    一.HTML5的新特性? 1.增强了表单,input新增了一些type:常用 color----定义调色板 tel-----定义包含电话号码的输入域 email---定义包含email地址的输入域 s ...

  3. 前端面试题归类-css

    一.说下盒模型? 有两种盒模型,W3C盒模型和IE盒模型通常说的"IE盒子模型"指的是IE5.5,IE6及其以后,盒模型都为 content-box当浏览器未设置<!doct ...

  4. 前端面试题2016--HTML

    本文由我收集总结了一些前端面试题,初学者阅后也要用心钻研其中的原理,重要知识需要系统学习.透彻学习,形成自己的知识链.万不可投机取巧,临时抱佛脚只求面试侥幸混过关是错误的!也是不可能的!不可能的!不可 ...

  5. 前端面试题 之 JavaScript

    昨天我们一起分享了关于html和css的面试题<前端面试题之Html和CSS>,今天我们来分享关于javascript有关的面试题.我面试的时候最害怕面试官问我js了,因为我真心不擅长这个 ...

  6. 【web前端面试题整理02】前端面试题第二弹袭来,接招!

    前言 今天本来准备先了解下node.js的,但是,看看我们一个小时前与一个小时后的差距: 既然如此,我们继续来搜集我们的前端面试题大业吧!!! 特别感谢玉面小肥鱼提供哟,@玉面小飞鱼 题目一览 Jav ...

  7. 各大互联网公司前端面试题(js)

    对于巩固复习js更是大有裨益.    初级Javascript: 1.JavaScript是一门什么样的语言,它有哪些特点? 没有标准答案. 2.JavaScript的数据类型都有什么? 基本数据类型 ...

  8. 前端面试题(html篇)

    前端面试题(html篇)

  9. 2016最全的web前端面试题及答案整理

    面试web前端开发,不管是笔试还是面试,都会涉及到各种专业技术问题,今天小编整理了一些常见的web前端面试题及答案,希望对大家有所帮助. 1.常用那几种浏览器测试?有哪些内核(Layout Engin ...

随机推荐

  1. 老猿学5G专栏文章目录

    ☞ ░ 前往老猿Python博文目录 ░ 一.3GPP规范文档及其他推荐阅读博文 老猿学5G扫盲贴:3GPP规范文档命名规则及同系列文档阅读指南 老猿学5G扫盲贴:3GPP规范中部分与计费相关的规范序 ...

  2. Docker部署CTF综合性靶场,定时刷新环境

    部署如DVWA或upload-labs这类综合性靶场的时候,虽然是使用Docker环境,设置好权限后容器被击穿的问题不需要考虑,但担心部分选手修改了题目环境,比如一直XSS弹窗,所以想要编写脚本每天定 ...

  3. jmeter使用中的问题

    1.响应乱码 step1:指定请求节点下,新建后置控制器"BeanShell PostProcessor" step2:其脚本框中输入以下代码,保存 //获取响应代码Unicode ...

  4. C++详解(8-9)

    八. C++函数的高级特性 对比于C语言的函数,C++增加了重载(overloaded).内联(inline).const和virtual四种新机制.其中重载和内联机制既可用于全局函数也可用于类的成员 ...

  5. 【无聊乱搞】如何用 std::set 过 gamma

    一道毒瘤题 \(\gamma\) by DPair 题目描述 维护一个正整数集 \(S\),元素 \(\in\) 值域 \(U\),需要支持: \(\texttt{1 l r}\):\(S\gets ...

  6. nginx学习之——CentOS6.0下安装nginx

    1.下载对应nginx版本 #注:下载地址:http://nginx.org/download/ wget -c http://nginx.org/download/nginx-1.10.3.tar. ...

  7. git clone 速度太慢解决方法

    本来想下载一个翻墙软件,实在是忍受不了每秒十几K的龟速,查阅各种资料,终于找到了失传已久的秘籍 先附图,实测有效,这速度简直要上天了啊啊啊啊啊(只支持HTTPS方式,SSH无效) 方案:使用githu ...

  8. uni-app全局属性和方法

    全局变量和全局方法是软件开发中常用的技术点! 实现方式大致分为: 1.vuex实现,值变动灵活 2.建立js文件,页面内引用 3.挂载vue实例后使用 4.小程序中的globalData 5.本地存储 ...

  9. 快速构建一个vue项目

    首先介绍一下命令行构建一个vue项目步骤: 1.下载安装node.js(直接运行安装包根据步骤安装完),打开命令行输入:node -v ,出现版本号即安装成功. 2.命令行界面输入:cnpm inst ...

  10. 可选链plugin-proposal-optional-chaining的使用(优化)

    第一步 安装 npm install --save-dev @babel/plugin-proposal-optional-chaining 然后在.babelrc.js文件夹里进行配置 plugin ...