实例讲解CSS3中的box.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

实例讲解CSS3中的box

box-flex是css3新添加的盒子模型属性,它的出现打破了我们经常使用的浮动布局,实现垂直等高、水平均分、按比例划分。但是它有一定的局限性,在firefox、chrome这浏览器下需要使用它们的私有属性来定义:firefox(-moz)、chrome(-webkit)。

一、box-flex属性

box-flex主要让子容器针对父容器的宽度按一定规则进行划分。

div???

?div?111/div??

?div?222/div??

?div?333/div??

/div??

style?type=text/css??

.box?{??

?display:box;??

?display:-webkit-box;??

?display:-moz-box;??

?background-color:#fff;??

?width:500px;??

?height:100px;??

?border:1px?solid?#333;??

?margin:0?auto;??

.col_1?{??

?box-flex:1;??

?-moz-box-flex:1;??

?-webkit-box-flex:1;??

?background-color:#ffc;??

.col_2?{??

?background-color:#ccf;??

?box-flex:2;??

?-moz-box-flex:2;??

?-webkit-box-flex:2;??

.col_3?{??

?background-color:#fcf;??

?box-flex:2;??

?-moz-box-flex:2;??

?-webkit-box-flex:2;??

/style??

注意:

父容器必须定义为display:box,其子容器才可以进行划分(如果定了display:box则该容器为内联元素,使用margin:0auto让其居中在firefox下无效,需要通过父容器的text-align:center;来控制。但在chrome下是可以的)

上面所讲到的例子中,三个子块分别设置了1、2、2,也就是把这个父容器分成5份,分别占据了父结构宽度的1/5(100px)、2/5(200px)、2/5(200px)。

以上是按比例数来进行划分的,如果其中一个或多个子容器设置了固定宽度,其它子容器没有设置,那么设置宽度的按宽度来算,剩下的部分再按上面的方法来计算。

.col_3?{??

?background-color:#fcf;??

?width:50px;/*设置宽度为50px*/??

}?

当子容器中需要有间隔的时候,他们平分的宽度需要减去中间的margin,然后再按比例平分。

.col_2?{??

?background-color:#ccf;??

?box-flex:2;??

?-moz-box-flex:2;??

?-webkit-box-flex:2;??

?margin:0?20px;??

}??

二、box属性

上面讲到的是如何将box-flex如何对父容器的宽度进行划分,现在来说一下父容器里面的box属性包括哪些。

box-orient,box-direction,box-align,box-pack,box-lines

1、box-orient

box-orient用来确定父容器里子容器的排列方式是水平还是垂直,可选属性如下:

horizontal|vertical|inline-axis|block-axis|inherit

horizontal和inline-axis属性其效果表现一致,都可以将容器水平排列,在默认情况下也呈现水平排列的样式。当父容器设置高度时,在firefox下面其子容器的高度无效,但chrome下面则有效。

.col_1{

height:50px;

.col_2{

height:80px;

}

如果你容器不设置高度,子容器的高度值才生效,在firefox下面他们的高度取其中的最大值。而chrome下面设置高度的子容器为自己的高度,未设置的其高度和最大值的高度一样,其实就是和父容器的高度一致。

.box?{??

?/*未设置高度*/??

.col_1?{??

?height:50px;??

.col_2?{??

?height:80px;??

.col_3?{??

?/*未设置高度*/?

文档评论(0)

183****9196 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档