这篇东西写了很久,大概半个月了,开始想详尽的写完所有的IEbug,但是要回家了,暂时先把这些放出来吧。写的过程参考了很多文章,比以前明白了很多东西,也发现了很多不知道的问题,如果您看完了,发现任何错误疑点、任何意见观点可以评论或者发邮件给我。
命中注定总有一个浏览器作为复仇女神来到世界各地的开发者中,在web标准运动初期,这个角色是Netscape Navigator 4,垂死挣扎就是不肯死去,阻碍着现代标准的进程;今天这个角色被Internet Explorer 6这位邪恶的坏同学代替了。——Jeremy Keith
Read more
工具集
Modernizr

如果你使用高级CSS属性,Modernizr 将是一个非常有用小型JavaScript。它为你的页面html标签添加一些类(class),来测试浏览器是否支持一些特定的CSS属性,像:
Read more
可以运用伪类和伪对象来设置那些在DOM中不能操作的信息的样式。例如,通常需要格式化一个段落的第一行,或者一个标题的首字母。
伪类
伪类是通过对象的特征对其进行格式化的,而不是通过它们的标识符、属性或者内容。
伪类:first-child将匹配一个元素的第一个子对象。假如你打算让新闻的第一段更具有视觉效果。如果新闻出现在类名(class)为news的<div>元素中,下面的规则将格式化每篇新闻的第一个<p>元素:
div.news p:first-child {
font-weight: bold;
}
<div class=“news“>
<p>Hi, 认识圣斗士吗? </p>
<p>星矢穿着神圣衣进入哈迪斯的神殿后面的事情怎么样了?</p>
</div>
动态伪类(dynamic pseudo-class )是伪类的一个子集。它们指那些有某些动态特征的伪类。运用它们,能够根据站点访问者的特定行为来格式化对象。
:focus将应用于那些获得焦点的对象。例如,当访问者点击了一个表单或者一个标签页中的输入框的时候:
input[type=text] : focus {
color: #f00;
background-color:#666;
}
用伪类:lang可以格式化特定语言(或许与文档主体不同的语言)内容中的对象。例如,下面的规则将一个迷你国旗放在任何汉语<blockquote>上:
blockquote:lang(cn) {
padding-right : 30px;
background: url(images/cn.png) no-repeat right top;
}
<blockquote lang=”cn”>
<p>哈尔很帅,黄头发时候最帅。冈田秒子长大的样子好丑,真的很丑的,奇怪,怎么可以那么丑,笑的就更丑了。</p>
</blockquote>
伪对象
伪对象同样能格式化那些不能作为DOM节点的文档部分。
伪对象:first-line将以段落的第一行作为目标。任何第一行中的字数将会随着文字在浏览器中的大小而改变。
下面的规则应用于页面中所有段落的第一行:
p:first-line {
font-style: italic:
}
伪对象:first-letter能够将元素的第一个字母或者数字作为目标。接下来的规则将用到类名为introduction的<p>元素中的第一个字符:
p.introduction:first-letter {
font-weight: bold:
font-size:400%;
}
相邻选择符由“+”连接符分隔的选择符组成。它匹配与第一个元素相邻的下一个元素。同时元素必须有相同的父级,并且第一个元素要在第二个之前。
h2 + p {
font-size: 20px;
border-bottom: 1px solid #666;
}
将上面的规则应用到下面这个例子中时,它只会影响第一段的内容
<h2>Hi, guy.</h2>
<p>preview on lost.</p>
<p>preview on prison break.</p>
子对象选择符以所给元素的直属子对象为目标。例如,它使你能够格式化列表的直属子对象中的链接,以区别其他的链接。子对象选择符由两个或更多的一”>”连接符分隔的选择符组成。
提示? -_- -!连接符(Combinator)分隔组合选择符中的两个或更多个选择符。可用的连接符包括空格,> ,+,逗号,分号。(当然都是半角咯#_#)
下面的例子规则将设置所有属于<div>元素子对象的链接的样式:
div > a {
text-indent: 200px;
}
这个规则仅影响那些直属于<div>元素的子对象(不是其他自对象的子对象)<a>元素。如果其他元素出现在<div>和链接之间——例如<ul>元素——选择符将不会与之匹配,text-indent格式也会失效。
<div>
<a href=”http://www.5ivedanc.com”>yunsi me</a>
<ul><li><a href=”http://www.5ivedanc.com”>yunsi me</a></li></ul>
</div>
以下内容节选资料书籍来自CSU中图- -! 这个地方权当做重要笔记摘抄(包括不改变意义的篡改, 简写-___-),包括之前众多文字,New Riders & 人邮版权所有。或者其他xxx版权归其作者和出版商所有,笔记仅供学习。
属性选择符异常强大,通过它们可以基于一个元素是否有属性名称,例如href, 或是是属性值,如http://www.xx.com 来对这个元素设计样式。
在下面的例子中,所有包含alt属性的图像都将会有一个灰色的色框:
img[alt] {
border: 1px dotted #999;
}
<img src=”../img/5ve.jpg“ alt=”ID: Milo Xing” />
所有包含title属性的链接将是红色:
a[title] {
color: #f00;
}
<a href=”../blog/index.php” title=”5ivedance blog“>blog me</a>
同样能够基于属性的内容来格式化一个元素:
p[class="rant"] {
font-weight: bold;
text-transform: uppercase;
}
<p class=”rant“>
Hi, I’m 5ivedance.</p>
同样,
div[id="main"] {
float=left;
}
<div id=”main“><p>Hi, I’m 5ivedance.</p></div>
【也许你会觉得上面这两个列子不是纯属费事吗,恩,其实我也是这么觉得开始,只是多默念一下这句话吧:基于元素部分的属性设置元素的样式。】
运用模式匹配(pattern matching), 你能够基于元素部分的属性设置元素样式。在下面的例子用到引言(<q>)的引用(cite)属性中的URL:
q[cite*=http://www.5ivedance.com/] {
background: #f00;
}
<q cite=”http://www.5ivedance.com/?134/“>Hi, I … I … I miss u.</q>
Recent Comments