`
ice-cream
  • 浏览: 329120 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

你应当了解的几个CSS3新技术

    博客分类:
  • Css3
阅读更多

作为一个Web开发者,保持对未来Web标准的关注、学习和了解是很重要的。这里是一些CSS3相关的文章和资源,不管你是第一次准备去认识CSS3,还是已经略知皮毛,下面这些资源都将有助你更好的学习和理解CSS3。

 

英文CSS3资源
CSS3.info
看域名就知道,这是一个专门介绍CSS3的网站。所有你想了解的有关CSS3的信息,都能在这里找到。
CSS3.com
又一个专门介绍CSS3的网站,包含各种CSS3参考文章和教程。
Introduction to CSS3
W3C官方对CSS3的各种详细介绍。

 

CSS3中的几个有趣的新技术:圆角、个别圆角、不透明度、阴影和调整元素大小

 

CSS3   边框效果

 

圆角

CSS3 新功能中最常用的一项是圆角效果,标准 HTML 方块对象是90度方角的,CSS3 可以帮你实现圆角。

 

 

-moz-border-radius: 20px; 
-webkit-border-radius: 20px; 

 

甚至单个角也可以实现圆角,不过 Mozilla 和 Webkit 的语法稍有不同。

-moz-border-radius-topleft: 20px;  
-moz-border-radius-topright: 20px;  
-moz-border-radius-bottomleft: 10px;  
-moz-border-radius-bottomright: 10px;  
-webkit-border-top-rightright-radius: 20px;  
-webkit-border-top-left-radius: 20px;  
-webkit-border-bottom-left-radius: 10px;  
-webkit-border-bottom-rightright-radius: 10px;  

 

IE9 浏览器也支持 CSS 圆角,IE 9 没有使用私有属性,直接使用 border-radius 定义圆角,border-radius 是定义四个角都是圆角,如果要具体的一个角,可以使用下面四个属性:

border-bottom-left-radius:10px;
border-bottom-right-radius:10px;
border-top-left-radius:10px;
border-top-right-radius:10px;
 

多层边框

border的另一个非常帮的特性是使用gradientcolors,而不是用图片:

bordercolor{
	border: 8px solid #000;
	-moz-border-bottom-colors: #0fff09 #00fff2 #00ff00 #ffd #ff0 #aaa #bbb #ccc;
	-moz-border-top-colors:    #0fff09 #00fff2 #00ff00 #ffd #ff0 #aaa #bbb #ccc;
	-moz-border-left-colors:   #0fff09 #00fff2 #00ff00 #ffd #ff0 #aaa #bbb #ccc;
	-moz-border-right-colors:  #0fff09 #00fff2 #00ff00 #ffd #ff0 #aaa #bbb #ccc;
	width:200px;
}

 

边框图片

一个令人兴奋的CSS3新的border特性是支持border-image。这样你就能为每一个独立的角和边框定义一个图片。

 

border-image:
    border-top-image
    border-right-image
    border-bottom-image
    border-left-image
    border-corner-image:
    border-top-left-image
    border-top-right-image
    border-bottom-left-image
    border-bottom-right-image
 

 

css3阴影效果

阴影效果曾让 Web 设计师既爱又恨,现在,有了 CSS3,你不再需要 Photoshop

 

-webkit-box-shadow: 10px 10px 25px #ccc;  
-moz-box-shadow: 10px 10px 25px #ccc;  
box-shadow: 10px 10px 25px #ccc;   

 

前两个属性设置阴影的 X / Y 位移,这里分别是 10px,第3个属性定义阴影的虚化程度,最后一个设置阴影的颜色。

 

IE下要设置阴影可以这样写:

filter:progid:DXImageTransform.Microsoft.Shadow(color=#ffffff,direction=0,strength=5) progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=90,strength=5) progid:DXImageTransform.Microsoft.Shadow(color=#aaaaaa,direction=180,strength=5) progid:DXImageTransform.Microsoft.Shadow(color=#cccccc,direction=270,strength=5);
 

文字阴影也可以这样设置:

 

text-shadow: 2px 2px 5px #ccc;  

 

css调整元素的尺寸

在最新版本的CSS中,调整元素的尺寸已经成为可能(不过目前仅Safari支持)

使用这个代码以后,我们的元素的右下角会出现一个小三角以提示用户这个元素是可以调整尺寸的。代码依然很简单,可以说仅需要一行代码,当然你还可以 配合使用一些曾经使用过的属性,比如”max-width”, “max-height”, “min-width”和 “min-height”.

 

#resize {
background-color: #fff;
border: 1px solid #000;
resize: both;
overflow: auto;
}

 在这里主要说一下resize和overflow属性,resize:both;的意思就是所有边都可以调整尺寸,它的值还有horizontalvertical ,顾名思义,就是横向和纵向。而overflow是为了配合resize工作的,在这里使用auto.

 

CSS3的方式修改不透明度

现在你可以按惯例编写几行代码来实现不透明度的效果(hack)。不过CSS3简化了这个流程。

这行代码很好记,仅仅是 “opacity: value;”

 

#opacity {
background-color: #000;
opacity: 0.3;
}
 

详解CSS3中的属性选择符
在CSS3中还有功能更加强大的选择符等待我们去发掘和使用。CSS3中的很多选择符已经在现代浏览器中得到很好的应用(IE8.0中也已经部分地 支持了 CSS3),但是这些基本功能上的支持还远远不能满足开发者使用的要求。但是在某些情况下使用他们可以带来很好的超前体验,因此我认为了解一 下CSS 3新增选择符是如何使用还是有益处的。

 

<!-- -->

选择符类型 表达式 描述
子串匹配的属性选择符 E[att^="val"] 匹配具有att属性、且值以val开头的E元素
子串匹配的属性选择符 E[att$="val"] 匹配具有att属性、且值以val结尾的E元素
子串匹配的属性选择符 E[att*="val"] 匹配具有att属性、且值中含有val的E元素
结构性伪类 E:root 匹配文档的根元素。在HTML中,根元素永远是HTML
结构性伪类 E:nth-child(n) 匹配父元素中的第n个子元素E
结构性伪类 E:nth-last-child(n) 匹配父元素中的倒数第n个结构子元素E
结构性伪类 E:nth-of-type(n) 匹配同类型中的第n个同级兄弟元素E
结构性伪类 E:nth-last-of-type(n) 匹配同类型中的倒数第n个同级兄弟元素E
结构性伪类 E:last-child 匹配父元素中最后一个E元素
结构性伪类 E:first-of-type 匹配同级兄弟元素中的第一个E元素
结构性伪类 E:only-child 匹配属于父元素中唯一子元素的E
结构性伪类 E:only-of-type 匹配属于同类型中唯一兄弟元素的E
结构性伪类 E:empty 匹配没有任何子元素(包括text节点)的元素E
目标伪类 E:target 匹配相关URL指向的E元素
UI元素状态伪类 E:enabled 匹配所有用户界面(form表单)中处于可用状态的E元素
UI元素状态伪类 E:disabled 匹配所有用户界面(form表单)中处于不可用状态的E元素
UI元素状态伪类 E:checked 匹配所有用户界面(form表单)中处于选中状态的元素E
UI元素状态伪类 E::selection 匹配E元素中被用户选中或处于高亮状态的部分
否定伪类 E:not(s) 匹配所有不匹配简单选择符s的元素E
通用兄弟元素选择器 E ~ F 匹配E元素之后的F元素

 

初探CSS3 RGBA颜色
浏览器的透明一直无法实现 单纯的颜色透明,每次使用alpha后就会把透明的属性继承到子节点上。换句话说,很难实现 背景颜色透明 而文字不透明的效果…直到 RGBA 颜色的出现这一切将成为现实。

 

实现这样的效果非常简单,设置颜色的时候我们使用标准的 rgba() 单位即可, 例如 rgba(255,0,0,0.4) 这样就出现了一个红色同时拥有alpha透明为 0.4的颜色.

 

background: rgba(200, 54, 54, 0.5);   
color: rgba(200, 54, 54, 0.5);  
 

CSS3 中的 Gird 布局
刚刚看了一份 W3C CSS3 的文档,是关于 Gird (网格?)布局草案的说明。无论它最终实现是否如草案中的描述,但这个功能本身就已经足够吸引人了。

 

图中蓝色的线不会出现在实际的网页中。对于这个布局复杂的三栏网页来说,如果使用 CSS3 Gird 布局的话,我们只需这样写:

 

body { columns:3; column-gap:0.5in; }
img { float:page top right; width:3gr; }
 

其中,body 部分声明页面为 3 栏,栏间距为 0.5英寸;img 中 float 属性指明图片浮动位置为页面的右上角(CSS3 定位好强大 -__-),而宽度为 3 个栏宽。只需这样两行 CSS,我们就可以实现这个复杂的布局了。真的很神奇。

Gird 布局是好,不过如果你认为它很简单的话,你就大错特错了。看看 w3c 中关于它的介绍 ,你会发现理解它的意义不亚于看懂天书。好在还是个草案,但愿它到了正式版的时候,能够更加简单易用点。

Gird 布局应用很广泛,最简单的例子就是内容的分栏显示。但这个 CSS3 特性目前还没有任何浏览器可以支持它。谁要是能第一个支持它(以及其它 CSS3 草案),那就酷毙了。不知道,最近异常低调的 IE8,会不会是这第一个吃螃蟹的人呢?

 


  • 大小: 45.5 KB
  • 大小: 122.5 KB
  • 大小: 68.4 KB
  • 大小: 3.9 KB
  • 大小: 9.3 KB
分享到:
评论
28 楼 oec2003 2009-05-17  
希望能尽早普及啊
27 楼 winstonczc 2009-05-04  
主要还是看浏览器的支持啊,2.0在不同浏览器里面就有不同的效果,我期待浏览器对统一标准的支持,不然出了4.0也麻烦
26 楼 pior 2009-04-24  
浏览器啊``这才是真正的标准```

空有支持是没用的``

很大情况下IE6还是主流`
25 楼 alloyer 2009-04-19  
very nice~
24 楼 wang5566156 2009-04-18  
呵呵 不错呀  什么时候出来的呀   都没关注过 今天看了 真是不错
23 楼 y_jj520 2009-04-14  
lz辛苦,学习之......
22 楼 tenderuser 2009-04-08  
有点早,css3 现在又几个浏览器支持呢
21 楼 tom033 2009-04-07  
现在浏览器支持了没有?今天 才看到这技术哦!够新的
20 楼 Snow_Young 2009-03-30  
边框图片那个太爱了……可惜占了中国大半江山的万恶的IE6啊……
19 楼 ice-cream 2009-03-18  
hanjs 写道
lz的文档中的属性现在的浏览器都支持?

没有都支持,ff支持的最好,ie支持的最差
18 楼 hanjs 2009-03-18  
lz的文档中的属性现在的浏览器都支持?
17 楼 xiaocheng 2009-03-16  
不错不错。
学习。温柔一刀 ?
16 楼 duloveping 2009-03-12  
我都没有用过CSS3啊,我觉得自己好落后好啊,自己只是一直都是在用CSS2.0啊。我要跟着时代走才可以了。
15 楼 ice-cream 2009-03-12  
fins 写道
跳槽吧 你在你现在的公司太埋没才能了

我等着你开公司呢,呵呵
14 楼 fins 2009-03-12  
ice 你越来越专业了!!!!!

跳槽吧 你在你现在的公司太埋没才能了

13 楼 whaosoft 2009-03-11  
UI最让我头疼的东西~!~
12 楼 zhouyrt 2009-03-11  
期待下一代支持标准的浏览器
11 楼 freedomstyle 2009-03-11  
客户的选择是标准的趋势!!
10 楼 ice-cream 2009-03-10  
lfrick 写道
手册里怎么没有css3的属性?

有css3的属性,是在css2的基础上做了延伸和完善,你可以用索引来搜索。但还有部分属性没有纳入css3手册中,期待浏览器的支持。
9 楼 lfrick 2009-03-10  
手册里怎么没有css3的属性?

相关推荐

    CSS3秘笈 第3版

    1. CSS3新特性介绍:了解CSS3相较于旧版CSS有哪些新特性,例如选择器的增强、伪类和伪元素的扩展、新的布局方式以及新增的颜色、字体和阴影等样式属性。 2. 布局控制:掌握基于CSS3的布局技术,包括弹性盒子...

    HTML5+CSS3网页设计与制作教案PPT

    在教学过程中,教案PPT应该涵盖以下几个核心知识点: 1. HTML5基础:讲解HTML5的基本结构,如何创建元素,以及新引入的语义化标签。 2. HTML5的新特性:包括多媒体元素、表单控件的增强、离线存储等。 3. CSS3选择...

    初学Web标准的几个误区,css,web

    ### 初学Web标准的几个误区 #### 误区一:仅为通过校验而标准化 - **核心要点**:Web标准的本质在于实现内容与表现的分离,而非单纯追求代码的校验通过。通过将样式(CSS)与内容(HTML)分离,可以更高效地管理...

    [css彻底设计研究css].温谦.扫描版.pdf

    CSS的设计研究通常包含以下几个方面: 1. CSS基础语法和选择器:介绍CSS的基本规则,包括属性、值、声明块和分号。同时,也会介绍不同种类的选择器,如元素选择器、类选择器、ID选择器、属性选择器等。 2. 盒模型...

    豆瓣css规范

    3. **页面级** - 仅在一个或少数几个页面中使用的样式,对于单一页面可以采用内联方式,而对于多个页面则应创建独立的样式文件。 #### 五、全站级CSS文件 - `core.css`:作为全站基本样式,需放在所有CSS引用的最...

    css+div网站后台模板经典

    在"css+div网站后台模板经典"中,我们可以期待以下几个关键知识点: 1. **响应式设计**:经典的后台模板通常会考虑到不同设备和屏幕尺寸的适配,采用响应式布局确保在手机、平板和桌面电脑上都能提供良好的用户体验...

    HTML_CSS_JAVASCRIPT.ppt

    此外,ES6(ECMAScript 6)引入了许多新特性,如let、const、箭头函数、模板字符串等,也应当进行学习。 这个PPT课件可能涵盖了HTML的基本标签、CSS的选择器和布局技术、JavaScript的基础语法和DOM操作等内容,适合...

    HTML、XHTML、CSS与JavaScript经典结合

    HTML、XHTML、CSS与JavaScript是构建现代Web应用的四大核心技术。...CSS(Cascading Style Sheets,层叠...随着Web标准的不断发展,以及HTML5和CSS3等新技术的推出,未来的网页设计和开发也将迈向更加丰富和多样化的方向。

    CSS浏览器的兼容问题

    ### CSS浏览器兼容问题...开发者应当关注最新的Web标准和技术趋势,以确保自己的项目能够更好地兼容各种浏览器。同时,也可以利用一些工具如Autoprefixer来自动处理浏览器前缀等问题,减少手动编写兼容性代码的工作量。

    用DIV+CSS技术制作个人博客网站(web前端网页制作课期末作业)

    根据给定文件的信息,我们可以提炼出以下几个重要的知识点: ### 1. 使用 DIV+CSS 技术制作个人博客网站的关键概念 - **DIV+CSS 布局**:这是一种流行的网页布局方式,通过 `&lt;div&gt;` 标签来划分网页的不同部分,并...

    蜂巢里的小蜜蜂光标CSS3特效

    "蜂巢里的小蜜蜂光标CSS3特效"就是一个很好的例子,它巧妙地将自然元素与技术结合,为网站带来独特的交互体验。这个特效将传统的鼠标光标变成了一个在全屏蜂巢背景下辛勤采蜜的小蜜蜂,为用户带来了生动而有趣的视觉...

    J2EE Web开发技术期待一次新的技术变革

    这些技术的问题主要体现在以下几个方面: 首先,Servlet作为J2EE Web开发的基础,它的编程模型基于流,这使得它更适合于处理底层服务,而非构建复杂的用户界面。开发者往往需要处理大量的I/O操作,增加了开发的复杂...

    div+css控制布局整理大全

    以下是几个重要的注意事项: 1. **DOCTYPE声明**:使用正确的DOCTYPE声明非常重要,它告诉浏览器该使用哪种HTML标准来解析页面。例如,XHTML 1.0 Strict的DOCTYPE声明为 `&lt;!DOCTYPE ...

    几个必要的软件技术指标

    ### 几个必要的软件技术指标 #### 设备无关性 设备无关性是现代软件开发中的一个重要概念,旨在确保软件能够适应不同的硬件环境,无需针对每种特定设备进行定制开发。这种特性极大地提高了软件的灵活性和可扩展性...

    jQueryCSS3实现超酷的分享按钮源码.zip

    总结来说,这个项目不仅教你如何创建一个视觉上引人注目的分享按钮,更是一个全面了解和实践jQuery与CSS3结合应用的好机会。通过实践,你将提升前端开发技能,为你的网页增添更多互动性和吸引力。

    HTML5+CSS3实例 :canvas 模拟实现电子彩票刮刮乐代码

    在实现刮刮乐效果的代码中,主要涉及到的JavaScript代码包含了以下几个部分: - HTML文件中初始化两个canvas元素,并引入相关的JavaScript文件。 - 在JavaScript文件中定义`Canvas2D`类,该类封装了绘制矩形、计算...

    CSS will-change:优化性能的预言者

    而`will-change`属性则是在CSS中特别用于性能优化的一个重要特性,它允许开发者向浏览器预告某个元素的属性即将发生变化,从而帮助浏览器提前做好准备,减少不必要的重排和重绘成本。 #### 一、`will-change`属性...

    css-content-visibility:新CSS属性内容可见性|| 性能测试示例

    随着Web技术的不断发展,CSS引入了新的属性——`content-visibility`,这个属性为开发者提供了控制元素内容渲染的新方式,有助于提高页面加载速度和减少CPU使用率。本文将深入探讨`content-visibility`属性的含义、...

    AJAX新手快车道

    一个良好的学习过程应该包括以下几个方面: - 本质:通过深入理解现有技术的基础,来帮助快速学习和理解新技术。 - 地图:建立起不同技术之间的关联,形成一张清晰的技术地图,为学习新技能提供参考。 - 技巧:学习...

    CSS3的transition和animation的用法实例介绍

    CSS3是CSS(层叠样式表)的最新版本,它引入了许多新特性,其中包括过渡(transition)和动画(animation)。这两个功能允许开发者创建更加丰富和动态的网页界面。 过渡(Transition)是CSS3的一个特性,它允许元素...

Global site tag (gtag.js) - Google Analytics