盒子内部对齐box-pack属性与box-align属性详解

本篇文章给大家带来的内容是关于盒子内部对齐box-pack属性与box-align属性详解,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

当弹性元素与非弹性元素混合排版时,有可能会出现所有子元素的尺寸大于或小于盒子的尺寸,从而出现盒子空间不足或者富余的情况。这时就需要一种方法来管理盒子的空间。如果子元素的总尺寸小于盒子的尺寸,则可以使用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></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属性详解的详细内容,更多请关注其它相关文章!