HTML、XML、XHTML 有什么区别
- HTML:超文本标记语言(HyperText Markup Language),是语法较为松散的、不严格的Web语言;
- XML:可扩展标记语言(Extensible Markup Language),主要用于存储数据和结构参考;
- XHTML:可扩展超文本标记语言(EXtensible HyperText Markup Language),基于XML,作用与HTML类似,但语法更严格参考。
怎样理解 HTML 语义化
- 简单说来就是让机器读取HTML文档结构的时候能够像人读书一样,可以读懂HTML文档内容。
- 只需要根据页面内容及其结构,选择合适的标签。
将页面内容的语义化翻译为代码级别的语义化。
编写语义明确的HTML代码需要有足够的耐心和良好的编码意识,这需要在实际的项目中不断地实践。 - 有利于SEO,有助于爬虫抓取更多的有效信息,爬虫是依赖于标签来确定上下文和各个关键字的权重。
语义化的HTML在没有CSS的情况下也能呈现较好的内容结构与代码结构。
用户体验:例如title、alt用于解释名词或解释图片信息、label标签的活用;
方便其他设备解析(如屏幕阅读器、盲人阅读器、移动设备)
便于团队开发和维护,语义化更具可读性,遵循W3C标准的团队都遵循这个标准,可以减少差异化。
怎样理解内容与样式分离的原则
- 写 HTML 的时候先不管样式, 重点放在HTML的结构和语义化上,让 HTML 能体现页面结构或者内容。之后再去写样式。
- 写 JS 的时候,尽量不要用 JS 去直接操作样式,而是通过给元素添加删除class来控制样式变化
- HTML 内不允许出现属性样式,尽量不要出现行内样式
有哪些常见的meta标签(转)
name=”viewport”
说明:在移动设备浏览器上,通过为视口(viewport)设置 meta 属性为 user-scalable=no 可以禁用其缩放(zooming)功能。这样禁用缩放功能后,用户只能滚动屏幕,就能让你的网站看上去更像原生应用的感觉。注意,这种方式我们并不推荐所有网站使用,还是要看你自己的情况而定!
用法:<meta name=”viewport” content=”width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no”>name=”description”
说明:这里是网页的描述,是给搜索引擎看的,搜索引擎根据这个描述进行收录排名,一般是网页内的关键字。
用法:<meta name=”description” content=””>name=”keywords”
说明:keywords用来告诉搜索引擎你网页的关键字是什么,换句话说就是你的网站主题,从一定意义上来说keywords与description其实它们的作用是一样的(突出网站主题),但他们又有所不同(在搜索结果页的展示)。
用法:<meta name=”keywords” content=””>name=”author”
说明:标注网站作者是谁
用法:<meta name=”author” content=”晨鸟”>name=”copyright”
说明:标注网站的版权信息
用法:<meta name=”copyright” content=”晨鸟”>name=”robots”
说明:robots用来告诉搜索机器人哪些页面需要索引,哪些页面不需要索引。content的参数有all,none,index,noindex,follow,nofollow。默认是all。
用法:<meta name=”robots” content=”all”>Refresh(刷新)
说明:自动刷新并转到新页面。
用法:<meta http-equiv=”Refresh” content=”5;URL”>;(注意后面的引号,分别在秒数的前面和网址的后面,URL可为空)
注意:其中的2是指停留2秒钟后自动刷新到URL网址。content-Type(显示字符集的设定)
说明:设定页面使用的字符集。
用法:<meta http-equiv=”content-Type” content=”text/html; charset=utf-8″>
注意:在HTML5中已经简写成<meta charset=”utf-8″>Window-target(显示窗口的设定)
说明:强制页面在当前窗口以独立页面显示。
用法:<meta http-equiv=”Window-target” content=”_top”>
注意:用来防止别人在iframe(框架)里调用自己的页面,这也算是一个非常实用的属性。Set-Cookie(cookie设定)
说明:如果网页过期,那么存盘的cookie将被删除。
用法:<meta http-equiv=”Set-Cookie” content=”cookievalue=xxx; expires=Friday,12-Jan-2001 18:18:18 GMT; path=/”>
注意:必须使用GMT的时间格式。Pragma(cache模式)
说明:禁止浏览器从本地计算机的缓存中访问页面内容。
用法:<meta http-equiv=”Pragma” content=”no-cache”>
注意:这样设定,访问者将无法脱机浏览。Expires(期限)
说明:可以用于设定网页的到期时间。一旦网页过期,必须到服务器上重新传输。
用法:<meta http-equiv=Expires Content=0>
用法:<meta http-equiv=”expires” content=”Fri,12 Jan 2001 18:18:18 GMT”>
文档声明的作用?严格模式和混杂模式指什么?<!doctype html> 的作用?
- 声明文档是用于告知浏览器,用什么文档类型规范来解析这个文档。
- 在严格模式中,浏览器根据规范呈现页面;在混杂模式中,页面以一种比较宽松的向后兼容的方式显示。混杂模式通常模拟老式浏览器(比如 Microsoft IE 4和Netscape Navigator 4)的行为以防止老站点无法工作。
- <!doctype html>是用来声明当前文档为html5。
浏览器乱码的原因是什么?如何解决
- 浏览器不能自动检测网页编码,造成网页乱码。
- 1、如果浏览器浏览时候出现网页乱码,在浏览器中找到转换编码的菜单。
在IE9浏览器中需要转码的网页空白出右键鼠标,即可选择“编码”。
傲游浏览器中浏览需要转码的网页时,菜单“查看”-->“编码”即可选择转换编码
谷歌浏览器中浏览需要转码的网页时,点击右上角“三横”图标选择“工具”-->“编码”即可选择切换网页编码达到让浏览器浏览此网页不是乱码。
2、如果自己开发网页,必须网页加入meta charset编码标签。假如转换时候,不是记事本编辑添加meta charset编码标签就完成,这样同样会造成乱码,那是因为直接记事本添加或修改编码格式后,而对应Html超文本文档内容并没有随添加或修改编码格式而变化,这个时候需要真正意义上的转码,所以最好借助开发软件进行编码添加与修改。
常见的浏览器有哪些,什么内核
- IE浏览器:Trident内核
- FireFox浏览器:Gecko内核
- Opera浏览器:Presto内核
- chrome浏览器:WebKit内核
- Safari浏览器:WebKti内核
- 国产浏览器:所谓的双内核,就是指Trident和WebKit
列出常见的标签,并简单介绍这些标签用在什么场景
html框架类标签
html -- 定义html文档
body -- 定义文档体body
head -- 定义文档头信息
headtitle -- 定义文档的标题titlehtml图像与链接类标签
a -- html链接标签a
img -- html图像标签imghtml文字相关标签
h-- 定义标题1至标题6 h1, h2, h3, h4, h5, h6
p-- html段落标签p
div-- html层div
strong -- 定义要强调显示的内容stronghtml列表标签
ul -- 定义html列表ul
li-- 定义html列表内容lihtml表格类标签
table -- 定义html表格table
tr -- 定义表格行tr
td -- 定义表格列tdhtml表单类标签
form-- html表单标签form
input-- 定义一个表单的输入域input
select-- 定义可选择的html表单select
textarea-- 定义一个多行的文字输入域textarea