解析:
单冒号(:)用于 CSS3 伪类,双冒号(::)用于 CSS3 伪元素。 对于 CSS2 之前已有的伪元素,
比如:before,单冒号和双冒号的写法::before 作用是一样的。
伪类选择器和伪元素?c3 中引入的伪类选择器有?c3 中伪元素有?
解析:
伪类用一个冒号来表示,而伪元素则用两个冒号来表示。
伪类选择器:
由于状态是动态变化的,所以一个元素达到一个特定状态时,它可能得到一个伪类的样
式;当状态改变时,它又会失去这个样式。
伪元素选择器:
并不是针对真正的元素使用的选择器,而是针对 CSS 中已经定义好的伪元素使用的选择
器;
c3 中引入的伪类选择器:
:root()选择器,根选择器,匹配元素 E 所在文档的根元素。在 HTML 文档中,根元素始
终是<html>。:root 选择器等同于<html>元素。
:not()选择器称为否定选择器,和 jQuery 中的:not 选择器一模一样,可以选择除某个元
素之外的所有元素。
:empty()选择器表示的就是空。用来选择没有任何内容的元素,这里没有内容指的是一
点内容都没有,哪怕是一个空格。
:target()选择器来对页面某个 target 元素(该元素的 id 被当做页面中的超链接来使用)指
定样式,该样式只在用户点击了页面中的超链接,并且跳转到 target 元素后起作用。
:first-child()选择器表示的是选择父元素的第一个子元素的元素 E。简单点理解就是选择
元素中的第一个子元素,记住是子元素,而不是后代元素。
:nth-child()选择某个元素的一个或多个特定的子元素。
:nth-last-child()从某父元素的最后一个子元素开始计算,来选择特定的元素
:nth-of-type(n)选择器和:nth-child(n)选择器非常类似,不同的是它只计算父元素中指定的
某种类型的子元素。
:only-child 表示的是一个元素是它的父元素的唯一一个子元素。
:first-line 为某个元素的第一行文字使用样式。
:first-letter 为某个元素中的文字的首字母或第一个字使用样式。
:before 在某个元素之前插入一些内容。
:after 在某个元素之后插入一些内容。
c3 中伪元素:
::first-line 选择元素的第一行,比如说改变每个段落的第一行文本的样式
::before 和::after 这两个主要用来给元素的前面或后面插入内容,这两个常用"content"
配合使用,见过最多的就是清除浮动
::selection 用来改变浏览网页选中文的默认效果
解析:
CSS3 实现圆角(border-radius),阴影(box-shadow),
对文字加特效(text-shadow、),线性渐变(gradient),旋转(transform)
transform:rotate(9deg) scale(0.85,0.90) translate(0px,-30px) skew(-9deg,0deg);
//旋转,缩放,定位,倾斜增加了更多的 CSS 选择器 多背景 rgba 在 CSS3 中唯一引入的伪
元素是::selection.媒体查询,多栏布局 border-image
解析:
绘画的 canvas 元素
用于媒介回放的 video 和 audio 元素
对本地离线存储的更好的支持
新的特殊内容元素,比如 article、footer、header、nav、section 5、新的表单控件,比
如 calendar、date、time、email、url、search
html5 有哪些新特性、移除了那些元素?如何处理 HTML5 新标签的浏览器兼容问题?如
解析:
何区分 HTML 和 HTML5?
* HTML5 现在已经不是 SGML 的子集,主要是关于图像,位置,存储,多任务等功能
的增加。
* 拖 拽 释 放 (Drag and drop) API 语 义 化 更 好 的 内 容 标 签
(header,nav,footer,aside,article,section) 音频、视频 API(audio,video) 画布 (Canvas) API 地理
(Geolocation) API 本地离线存储 localStorage 长期存储数据,浏览器关闭后数据不丢失;
sessionStorage 的数据在浏览器关闭后自动删除 表单控件,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 框架 <!--[if lt IE 9]>
<script> src=" http://html5shim.googlecode.com/svn/trunk/html5.js"</script> <![endif]-->
* 如何区分: DOCTYPE 声明\新增的结构元素\功能元素