|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
一个样式规则由一个选择器后跟一个声明块组成,声明块是一个大容器,由大括号中间的部分组成,声明块中间的空间会被忽略。
破洛洛文章简介:CSS3Region:基于HTML和CSS3的富页面结构.
译自:CSS3regions:RichpagelayoutwithHTMLandCSS3
中文:CSS3Region:基于HTML和CSS3的富页面结构
请尊敬版权,转载请说明来历,多谢!
互联网已成为一个供应参考、课本、旧事、文章和交互使用的年夜宝库了。但是,当为印刷计划内容时,一些功效明显仍旧不成能大概很难利用Web尺度来完成。
印刷出书物正在探究更好的办法来转换大概改动他们的内容以顺应富数字格局。我们也看到这是一个让网页更富于体现和撑持更庞大结构的好时机。
Adobe经由过程加强CSS举行了一些实行来展现一些传统杂志利用的庞大结构。我们也提交了一些倡议到W3CCSS事情组,并构建了一个原型来经由过程webkit完成这些提案。你能够从AdobeLabs下载这些原型体验下。然后你也能够在CSSRegionsModule和这个W3C网站上的CSSExclusionsModule页面找到W3C编写的草案。你也能够定阅W3CCSS邮件列表来会商这个成绩。接待在邮件题目中到场”[css3-regions]“大概”[css3-exclusions]“来在这个邮件组中会商这个成绩。固然也能够经由过程AdobeLabs的CSSRegions论坛反应成绩。
一些申明:这是个在举行中的事情。跟着我们和宽大社区的会商,我们将会做些改动。本文顶用到的语法反应出以后W3C草案的近况,可是跟着W3C事情组和社区的切磋大概会有些退化。同时也请注重,依照常规,一切的新的数学将会起首接纳-webkit-前缀。不外,为了简化,我在本文中省往了这个前缀。
如今,让我们懂得这个扩大吧,他们能够被分为4类:
- 线性内容(Threadingcontent):从一个地区“流向”另外一个地区的内容。
- 恣意外形的容器(Arbitrarilyshapedcontainers):在非矩形地区内显现文本。
- 恣意外形围绕(Arbitrarilyshapedexclusion):文本围绕非矩形地区。
- 地区款式(Regionstyling):依据流向地区显现内容。
上面是各类分类的例子:
内容流(Contentflow)
在典范的HTML文档中,笔墨能够在多个地区显现,可是每一个地区中的笔墨是不相干的(见)。假如你想要跨多个列显现文本,大概利用其余你必要的更庞大的地区来手动。在用户缩小笔墨大概用户的字体比你设定的字体年夜时,这大概会没法乱失落。这个办法(css3region)一样是的具有在缩放窗口是自顺应的流体结构成为大概,大概,当显现在平板上时,自顺应竖屏(portrait)大概横屏(landscape)显现。
.笔墨跨3个分歧宽的列显现
假如你想要独自地指定一托内容(好比笔墨和图片),那些内容怎样在一串地区内显现(flow)呢?这恰是内容流(contentflow)要做的。
要利用它,经由过程flow属性付与内容的容器一个名字,如许做会将内容从一般的CSS结构流中往失落,然后你能够拔出这个线程到1个或多个其他地区——利用from()作为content属性的值。
下面的三列结构的代码以下:
CSS- #source{flow:"main-thread";}.region{content:from(main-thread);background:#C5DFF0;}
复制代码 HTML- <divid="source"><p>Loremipsumdolor[...]</p></div><divid="region1"class="region"></div><divid="region2"class="region"></div><divid="region3"class="region"></div>
复制代码 你能够在一个页面中团结多个定名的flow。你也能够利用content-order属性来把持笔墨流的按次。假如没有指定,将会利用一般的文档按次。
经由过程这个复杂的构件,你能够完成更庞大的结构,包含多列文本、分歧宽高的列,和超过多个列的地区。(见)
.笔墨穿越堆叠的地区和列
外形围绕(Wrapshape)
利用外形围绕,你能够把持笔墨经由地区的外形(见)。你也能够利用这个属性搭配内容流大概独自的创立更风趣的计划。
.笔墨内容显现在自界说外形的外部
要利用这个特征,你必要利用wrap-shape属性来界说外形,并设定wrap-shape-mode属性为必要的值。经由过程制订content的值,笔墨将显现在外形外部。
下面的实际心形的代码以下:
CSS- .circle{/*界说元素外形为一个圆*/wrap-shape:polygon(0px,150px/*...更多点*/);wrap-shape-mode:content;}.heart{/*界说元素外形为心形*/wrap-shape:polygon(150px,32px/*...更多的点*/);wrap-shape-mode:content;}
复制代码 HTML- <divclass="circle"></div><divclass="heart"></div>
复制代码 我们的基于WebKit原型撑持利用一个复杂的多边形指定一个外形,可是你能够设想别的的汇合体也能够被用于设定外形,大概乃至利用一张图片的alpha值。。。
围绕(Exclusions)
经由过程利用wrap-shap-mode属性的别的值,你能够创立分歧的效果,包含指定的wrap-shape属性能够了解为要完整避开的地区(看)。
.笔墨围绕在自界说图形四周
CSS- .exclusion{/*笔墨围绕全部元素*/wrap-shape-mode:around;}
复制代码 HTML- #source{flow:"main-thread";}.region{content:from(main-thread);background:#C5DFF0;}0
复制代码- #source{flow:"main-thread";}.region{content:from(main-thread);background:#C5DFF0;}1
复制代码 地区款式(RegionStyling)
在杂志中,指定内容围绕计划中的一个特定的地区是很罕见的。我们称之为地区款式。例子展现了笔墨围绕在第一个区块(包含introduction题目的部分)被设定为深蓝色,而余下的笔墨则为灰色(看)。
.笔墨款式依附它流进的地区
CSS- #source{flow:"main-thread";}.region{content:from(main-thread);background:#C5DFF0;}2
复制代码- #source{flow:"main-thread";}.region{content:from(main-thread);background:#C5DFF0;}3
复制代码 HTML- #source{flow:"main-thread";}.region{content:from(main-thread);background:#C5DFF0;}2
复制代码- #source{flow:"main-thread";}.region{content:from(main-thread);background:#C5DFF0;}5
复制代码 地区款式今朝还没有在AdobeLabs的这个webkit原型内里完成。
CSS3地区和媒体查询
那些基础的构建块能够组合起来创立更风趣更庞大的结构,相似你常常看到的印刷出书物。你也能够将它们共同别的web尺度合用。好比,分离CSS媒体查询,能够创立顺应分歧设备的偏向(横屏landscape、竖屏portrait等)的结构。
展现了利用wrap-shape属性分离CSS3媒体查询来完成顺应分歧屏幕朝向的结构。
.利用属性分离CSS3媒体查询来完成顺应分歧屏幕朝向的结构
展现怎样让一样的内容顺应分歧的屏幕偏向,和变更的列数
内容顺应分歧的屏幕偏向,同时改动的列数
CSS3地区和JavaScript
你也能够将这些功效分离JavaScript以创立交互的内容。鄙人面的中展现的,你能够滑动双向的箭头以挪动图片,这个时分,笔墨环绕山体和汽车从头结构。
.滑动双向的箭头挪动图片,笔墨环绕山体和汽车从头结构
这个例子包括在下面提到的WebKit原型中,你能够下载体验下。
译注:CSS3region这个词,实在不太好翻译,临时依照region的意义翻译为地区,可是感到很别扭。另有文中的一些词组,假如你以为有更好的中文说法,请见教——神飞。
</p>
缩短改版时间。只要简单的修改几个CSS文件就可以重新设计一个有成百上千页面的站点。 |
|