Trident内核:IE系列
Gecko内核:Firefox
Webkit内核:Safari
Blink内核:是基于Webkit内核的子项目,使用的浏览器有:
Chrome/opera等除IE、Firefox、Safari之外的几乎所有浏览器
几乎所有国产双内核浏览器(Trident/Blink)如360、猎豹、qq、百度等
!Doctype
文档声明。
声明位于文档中的最前面的位置,处于标签之前。
此标签可告知浏览器文档使用哪种HTML或XHTML规范。(重点:告诉浏览器按照何种规范解析页面)
IE下如不书写文档声明会使用怪异模式解析网页导致一系列CSS兼容性问题。
多个域名来存储网站资源会更有效
CDN缓存更方便
突破浏览器并发限制
节约cookie带宽
节约主域名的连接数,优化页面响应速度
防止不必要的安全问题
HTML结构语义化:
更符合W3C统一的规范标准,是技术趋势。
没有样式时浏览器的默认样式也能让页面结构很清晰。
对功能障碍用户友好。屏幕阅读器(如果访客有视障)会完全根据你的标记来“读”你的网页。
对其他非主流终端设备友好。例如机顶盒、PDA、各种移动终端。
对SEO友好。
:被点击访问过的超链接样式不再具有hover和active了
,解决方法是改变CSS属性的排列顺序: L-V-H-A(link,visited,hover,active)
区别:
rgba()和opacity都能实现透明效果,但最大的不同是opacity作用于元素,以及元素内的所有内容的透明度,
而rgba()只作用于元素的颜色或其背景色。(设置rgba透明的元素的子元素不会继承透明效果!)
.px和em的区别。
px和em都是长度单位,区别是:
px值固定,容易计算。
em值不固定,是相对单位,其相对应父级元素的字体大小会调整
.CSS中link和@import的区别是:
Link属于html标签,而@import是CSS中提供的
@import有执行效率问题,它会打破浏览器并行加载资源,导致加载页面速度变慢。尽量不要使用@import。
HTML与XHTML——二者有什么区别?
1.所有的标记都必须要有一个相应的结束标记
2.所有标签的元素和属性的名字都必须使用小写
3.所有的XML标记都必须合理嵌套
4.所有的属性必须用引号""括起来
5.把所有<和&特殊符号用编码表示
6.给所有属性赋一个值
7.不要在注释内容中使用"--"
8.图片必须有说明文字
html常见兼容性问题?
1.双边距BUG float引起的使用display
2.3像素问题 使用float引起的 使用dislpay:inline -3px
3.超链接hover点击后失效使用正确的书写顺序link visited hover active
4.IE z-index问题 给父级添加position:relative
5.Png透明 使用js代码 改
6.Min-height最小高度 !Important解决’
7.select在ie6下遮盖 使用iframe嵌套
8.为什么没有办法定义1px左右的宽度容器(IE6默认的行高造成的,使用over:hidden,zoom:0.08 line-height:1px)
9.IE5-8不支持opacity,解决办法:
.opacity {
opacity: 0.4
filter: alpha(opacity=60); /* for IE5-7 */
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; /* for IE 8*/
}
10. IE6不支持PNG透明背景,解决办法: IE6下使用gif图片