100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 两端对齐的css CSS两端对齐(示例代码)

两端对齐的css CSS两端对齐(示例代码)

时间:2019-10-23 06:57:52

相关推荐

两端对齐的css CSS两端对齐(示例代码)

flex

弹性盒模型flex作为强大的弹性布局方式,可以hold住大部分的布局效果,当然也包括两端对齐。可以使用主轴对齐justify-content的两端对齐属性space-betweenjustify-content:space-between;

如果要考虑flex三个版本的兼容,则使用如下代码

[注意]IE9-浏览器不支持.justify-content_flex-justify{

-webkit-box-pack:justify;

-ms-flex-pack:justify;

-webkit-justify-content:space-between;

justify-content:space-between;

}

ul{margin:0;padding:0;list-style:none;}.list{width:200px;overflow:hidden;border:1pxsolidgray;background-color:lightgreen;line-height:30px;}.in{background-color:lightblue;padding:010px;}.display_flex{display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;}.display_flex>*{display:block;}.justify-content_flex-justify{-webkit-box-pack:justify;-ms-flex-pack:justify;-webkit-justify-content:space-between;justify-content:space-between;}

内容样式行为

text-align

水平对齐text-align本身就有一个属性值是两端对齐justify。但是,要注意的是,使用它实现两端对齐,需要注意在元素之间添加空白符(包括空格、换行符、制表符)才起作用。由于HTML结构中,

元素之间存在换行,所以不需要额外添加空白符

但仅仅是这样,元素也无法实现两端对齐效果

元素必须占满一行才行,如下所示。占满一行的元素可以实现两端对齐,没有占满的则无法实现

【text-align-last】

显然,上面的情况都不符合要求,这时就需要使用属性text-align-last,该属性用来规定如何对齐文本的最后一行

于是把text-align属性替换成text-align-last。但是,要兼容IE浏览器需要同时设置text-align:justify

[注意]safari浏览器、IOS、androis4.4-浏览器不支持

ul{margin:0;padding:0;list-style:none;}.list{width:200px;overflow:hidden;border:1pxsolidgray;background-color:lightgreen;line-height:30px;text-align:justify;text-align-last:justify;}.in{background-color:lightblue;padding:010px;display:inline-block;}

内容样式行为

【after伪元素】

使用text-align-last可以实现两端对齐的效果,但是兼容性并不好。通过给父元素设置伪元素:after,并为伪元素设置inline-block,并设置宽度100%,相当于伪元素:after被挤到第二行。从而使原来的元素占满了第一行,触发了两端对齐的效果

这里要注意的是,因为空白会被解析为换行,所以可以通过设置父元素的高度height,并溢出隐藏,来解决多余的换行问题

ul{margin:0;padding:0;list-style:none;}.list{width:200px;height:30px;overflow:hidden;border:1pxsolidgray;background-color:lightgreen;line-height:30px;text-align:justify;}.in{background-color:lightblue;padding:010px;display:inline-block;}.list:after{content:"";width:100%;display:inline-block;}

内容样式行为

column

使用多列布局column也可以实现类似的效果。column-count定义了元素的列数,例子中有3个子元素,所以定义为3列。特别要注意的是,这时需要把子元素设置为block元素才会生效

[注意]IE9-浏览器不支持

ul{margin:0;padding:0;list-style:none;}.list{width:200px;overflow:hidden;border:1pxsolidgray;background-color:lightgreen;line-height:30px;text-align:center;}.col3{-webkit-column-count:3;-moz-column-count:3;column-count:3;}.in{background-color:lightblue;padding:010px;display:block;}

内容样式行为

如果子元素之间需要使用竖线,且竖线高度与子元素高度相同时,使用column-rule可方便的实现需求

ul{margin:0;padding:0;list-style:none;}.list{width:200px;overflow:hidden;border:1pxsolidgray;background-color:lightgreen;line-height:30px;text-align:center;}.col3{-webkit-column-count:3;-moz-column-count:3;column-count:3;}.col-rule{-webkit-column-rule:1pxsolidblack;-moz-column-rule:1pxsolidblack;column-rule:1pxsolidblack;}.in{background-color:lightblue;padding:010px;display:block;}

内容样式行为

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。