当弹性元素与非弹性元素混合排版时,有可能会出现所有子元素的尺寸大于或小于盒子的尺寸,从而出现盒子空间不足或者富余的情况。这时就需要一种方法来管理盒子的空间。如果子元素的总尺寸小于盒子的尺寸,则可以使用box-align和box-pack属性进行管理。
CSS3新增的box-pack属性和box-align属性,分别用于定义盒元素内部“子元素”的水平方向和垂直方向上的富余空间管理方式。这些对齐方式,对盒元素内部的文字、图形以及子元素都是有效的。
一、水平对齐box-pack属性
box-pack属性可以在水平方向上对盒子的富余空间进行管理。
二、垂直对象box-align属性
box-align属性可以在垂直方向上对盒子的富余空间进行管理。
三、实际应用
在CSS2中,如果想要让文字垂直居中,往往都是设置height属性值等于line-height属性值 ,不过学习了这一节,我们只要让div元素使用box-align属性(排列方向默认为horizontal),文字就可以垂直居中了。
举例1:文字自适应居中(包括垂直居中和水平居中)
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>盒子内部对齐box-pack属性与box-align属性</title> <style type="text/css"> div { width:200px; height:160px; display:-webkit-box; -webkit-box-align:center; -webkit-box-pack:center; background-color:pink; } </style> </head> <body> <div>php中文网</div> </body> </html>
举例2:图片自适应居中(包括垂直居中和水平居中)
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>盒子内部对齐box-pack属性与box-align属性</title> <style type="text/css"> #control { margin-bottom:10px; } #view { width:160px; height:100px; display:-webkit-box; -webkit-box-orient:horizontal; -webkit-box-align:center; -webkit-box-pack:center; border:1px solid silver; } </style> <script src="jquery-1.11.3.min.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#range_width").change(function () { var num = $(this).val(); $("#value_width").text(num + "px"); $("#view").css("width", num + "px"); }); $("#range_height").change(function () { var num = $(this).val(); $("#value_height").text(num + "px"); $("#view").css("height", num + "px"); }); }) </script> </head> <body> <div id="control"> 宽度:<input id="range_width" type="range" min="160" max="320" value="160"/><span id="value_width">160px</span><br /> 高度:<input id="range_height" type="range" min="100" max="240" value="100"/><span id="value_height">100px</span> </div> <div id="view"><img src="../App_images/lesson/run_css3/css3.png" alt=""/></div> </body> </html>
以上就是对盒子内部对齐box-pack属性与box-align属性详解的全部介绍,如果您想了解更多有关CSS3视频教程,请关注PHP中文网。
以上就是盒子内部对齐box-pack属性与box-align属性详解的详细内容,更多请关注php中文网其它相关文章!
……