多列布局(column)
容器的属性
column-width: auto | < length > 。给列定义一个最小宽度(min-width)。
- auto: 列宽由其他元素决定。
- length: 显式设置最小宽度。
column-count: auto | < integer >定义列的数量。
- auto: 元素只有一列。就像没有设置一样。
- < integer >: 正整数值。取值是大于0的整数,负值无效。
columns: < column-width > || < column-count >。是column-width和column-count的简写。次序随意。
列宽 = ( 父元素宽度 - (列数-1) 列间隙 ) / 列数*
比如:父元素40em,分为4列,列间隙为2em。那么列宽为( 40 - (4-1) * 2) / 4 = 8.5em。
如果显式设置的列宽小于这个宽度,它会以这个宽度展示。
如果显式设置的列宽大于这个宽度,它会按照合适的尺寸重新排列列宽和列数。当前设置的列宽和列数并不准确。
column-gap: normal | < length >。定义列间距。值过大时会撑破布局。
normal: 默认值,由浏览器解析,一般是lem。
< length >: 有浮点数字和单位标识符组成的长度值。如:2.1em。
column-rule: < column-rule-width > | < column-rule-style > | < column-rule-color >。定义列边框。
它的中心线始终和列间距的中心线一样。换言之,它总处于两列的中间。和border类似。如果列边框大于列间距,并不会自动消失。列边框超出列间距的部分就像是沉在文字的下方一样(背景效果)。
column-fill: auto | balance。定义多列中每一列的高度是否统一。
这个属性很奇怪。并且在浏览器中不统一。它有两个值:auto | balance。在 ie10/ie11/opera40/chrome52中测试的结果都是一样的,发现这两个属性并没有区别。在firefox49中测试,这两个属性是有区别的,其中balance是每列高度差不多(对齐),auto就自动合并成一列了,无论自己设置的是多少列。
项目(元素)属性
column-span: none | all。定义一个元素横跨多少列。
如果我们常将标题横跨所有列。那么,column-span: all。其默认值是,column-span: none;表示不跨列。
代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>多列布局|column-span</title>
<style type="text/css">
*{
margin: 0;
padding: 0;
}
.wrapper {
width: 40em;
margin:0 auto;
border: 1px solid #ccc;
/*多列布局*/
-moz-column-count: 4;
-webkit-column-count: 4;
column-count: 4;
-moz-column-gap: 2em;
-webkit-column-gap: 2em;
column-gap: 2em;
-moz-column-rule: .1em dashed #ccc;
-webkit-column-rule: .1em dashed #ccc;
column-rule: .1em dashed #ccc;
-webkig-column-fill: balance;
-moz-column-fill: balance;
column-fill: balance;
}
h1 {
font-size: 1.5em;
margin-bottom: 1em;
-moz-column-span: all;
-webkit-column-span: all;
column-span: all;
padding-bottom: 5px;
text-align: center;
border-bottom: 2px solid #ccc;
}
p {
margin-bottom: 1em;
text-indent: 2em;
line-height: 1.625;
font-size: .7em;
}
</style>
</head>
<body>
<div class="wrapper">
<h1>金融时报:微软能否拯救Windows 8?</h1>
<p>网易科技讯 5月8日消息,据国外媒体报道,Windows 8上市以来遭到业界与用户的各种诟病,销售量也不乐观。虽然微软已经意识到问题的严重性,但是鲍尔默能否力挽狂澜,还不得而知。今天金融时报撰文分析Windows 8与微软所遇到的困境,并展望了他们的未来,以下是文章主要内容:</p>
<h3>微软能否拯救Windows 8?</h3>
<p>这个问题关乎世界上最大的软件公司的未来以及其首席执行官史蒂夫·鲍尔默(Steve Ballmer)的职业生涯。微软为了保持其在PC领域的领先地位而推出的操作系统并没有得到用户的认可。</p>
<p>不过,看起来微软已经意识到问题的严重性。一个标志性动作就是,本周早些时候,微软宣布在今年年底之前发布Windows8的更新版本,代号为“Blue”。这是微软第一次打破了按年发布的传统,增加软件版本发布的频率,但跟竞争对手苹果和谷歌的软件更新发布频率还有不小差距。不过不管怎样这都说明微软已经开始采取行动,应对更激烈的竞争。</p>
<p>设计融合PC和平板电脑的Win8已经遭到了业界各种严厉的批评。纽约高科技研究公司Envisioneering的分析师Richard Doherty表示,“坐在Win8前面会让人感觉这操作系统蠢毙了,早期使用反馈研究表明人们广泛表示对win8不满。”Win8结合了传统PC界面和平板触摸屏界面的设计理念也遭人诟病,一些评论认为微软过于雄心勃勃,以至于在两款平台上都没有做好。</p>
<p>不过微软现在已经准备承认该软件确实给PC用户带来了不便:PC用户面对Win8时,需要经历一个十分陡峭的“学习曲线”。同时,微软也在做出改变,旨在提高Win8的可用性。虽然没有确凿证据,但微软受到了来自PC用户不小的压力。PC用户的希望是,当他们打开自己的PC时,是熟悉的Windows桌面,而不是被强制使用“丰富多彩”的微软瓷砖。同时,PC用户也一直希望微软把“开始”按钮弄回来。长期以来这一直是PC用户最熟悉的导航工具。</p>
<p>这些反馈表明,很多用户还没有准备好使用Windows的触摸屏操作系统,而是继续把Windows当作PC时代的产品。微软本周也承认Win8的成功将不仅仅需要用户界面的变化。Win8的另一个问题是价格。不过微软目前正在推动硬件厂商生产尺寸更小,成本更低的平板。这样的话,Win8平板的价格可能迅速下降到400美元左右,并向300美元看齐。</p>
<p>不过值得微软庆幸的是至少目前Win8没有遇到Vista的软件质量问题。许多企业用户因为Vista的各种弊病,直接跳过该版本,直接从早期的XP升级到Windows 7。约三分之二的企业用户目前已经升级到Windows 7。不过他们目前又开始了另一次观望,已决定是否要做新的升级。如果企业用户决定跳过Win8,那么微软将错过追赶苹果和谷歌的重要机会。</p>
</div>
</body>
</html>
效果图:
持续更新,感谢大家支持。
多列布局(column)的更多相关文章
- 文字的多列布局--column
- 多列布局 css3 column属性
<!doctype html><html lang="en"><head> <meta charset="UTF-8" ...
- 多栏多列布局(display:flex)
display:flex 多栏多列布局浏览器支持情况:火狐直接支持w3c无前缀写法,谷歌和opera支持-webkit- 前缀写法,比较适合移动端开发使用, display:flex 这个牛逼的css ...
- CSS多列布局
× 目录 [1]列宽 [2]列数 [3]列间距[4]列rule[5]跨列[6]列填充[7]多列 前面的话 CSS新增了多列布局特性,可以让浏览器确定何时结束一列和开始下一列,无需任何额外的标记.简单来 ...
- 第 28 章 CSS3 多列布局
学习要点: 1.早期多列问题 2.属性及版本 3.属性解释 主讲教师:李炎恢 本章主要探讨 HTML5 中 CSS3 提供的多列布局,通过多列布局我们方便的创建流体的多列布局. 一.早期多列问题 我们 ...
- FineUI第十三天---`列布局
这是经典的列布局: <x:Panel runat= <Items> ...
- 多列布局——Columns
为了能在Web页面中方便实现类似报纸.杂志那种多列排版的布局,W3C特意给CSS3增加了一个多列布局模块(CSS Multi Column Layout Module).它主要应用在文本的多列布局方面 ...
- display:flex 多栏多列布局
转自:http://www.360doc.com/content/14/0811/01/2633_400926000.shtml display:flex 多栏多列布局浏览器支持情况:火狐直接支持w3 ...
- 纯CSS无hacks的跨游览器多列布局
利用纯CSS创建一个等高多列的布局并不件易事,本教程将着重分析出现在多列布局的多个问题,然后为大家等来一个简单全游览器通吃的解决方法,不使用图片,脚本,CSS hacks并在最严格的XHTML 规范中 ...
随机推荐
- php不支持多线程怎么办
PHP 默认并不支持多线程,要使用多线程需要安装 pthread 扩展,而要安装 pthread 扩展,必须使用 --enable-maintainer-zts 参数重新编译 PHP,这个参数是指定编 ...
- ArrayBlockingQueue使用
阻塞与非阻塞: 阻塞: 阻塞调用是没有获得资源则挂起进程,被挂起的进程进入休眠状态,调用的函数只有在得到结果之后才返回,进程继续. 对象是否处于阻塞模式和函数是不是阻塞调用有很强的相关性,但并不是一一 ...
- 清除mac中自动记录的git用户名和密码
应用程序-实用工具-双击钥匙串-右上角搜索github-右击选项删除
- LOJ 2234/BZOJ 3629 聪明的燕姿(数论+DFS)
题面 传送门 分析 看到约数之和,我们首先想到约数和公式 若$ x=\prod_{i=1}^{n}p_i^{k_i} \(,则x的约数和为\) \prod_{i=1}^{n} \sum_{j=0}^{ ...
- Jenkins windows 执行批量cmd命令XCOPY 提示'XCOPY' 不是内部或外部命令,也不是可运行的程序 或批处理文件。
由于Jenkins没有配置环境变量造成 打开Jenkins=>Manage Jenkins =>Configure System =>全局属性 新增全局变量 健: Path 值: % ...
- vue2.0在IE11无法打开的解决办法
npm 安装bebel-polyfill npm install --save-dev babel-polyfill 在webpack.base.conf.js文件中将 module.exports ...
- 使用form提交到搜狗浏览器示例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- React入门-JSX和虚拟dom
1.JSX理解 举例: const element = <h1>Hello, world!</h1>; 这被称为 JSX,是一个 JavaScript 的语法扩展.建议在 Re ...
- wxstring与其他类型转换
wxstring与其他类型转换 1.1 int to wxString: wxString str = wxString::Format(wxT("%i"),myInt); 1.2 ...
- swagger集成到springBoot 项目中
1 pom 文件加包依赖 <dependency> <groupId>io.springfox</groupId> <artifactId>spring ...