css文本两端对齐 css文字两端对齐

发布时间:2021-01-18编辑:脚本学堂
本文介绍了css文字两端对齐的方法,在做表单时经常遇到让上下两个字段对齐的情况,比如姓名,手机号码,出生地,可以使用text-align或text-justify样式实现文字两端对齐。

css中实现文字两端对齐,text-align直接设为justify就行了,text-justify的情况就复杂了,可能有人对它还不熟悉。

IE的取值如下:
auto :允许浏览器用户代理确定使用的两端对齐法则
inter-word :通过增加字之间的空格对齐文本。该行为是对齐所有文本行最快的方法。它的两端对齐行为对段落的最后一行无效
newspaper : 通过增加或减少字或字母之间的空格对齐文本。是用于拉丁文字母表两端对齐的最精确格式
distribute :处理空格很像newspaper,适用于东亚文档。尤其是泰国
distribute-all-lines :两端对齐行的方式与distribute相同,也同样不包含两段对齐段落的最后一行。适用于表意字文档
inter-ideograph : 为表意字文本提供完全两端对齐。他增加或减少表意字和词间的空格
但它最早是作为IE的私有实现,像text-overflow, overflow-x等,在FF很晚才实现,换言之有严格的兼容性问题。并且FF,chrome需要手动在汉字间插入空白或软换行标签才生效,在chrome遇到的阻力就更大了。

css文字两端对齐的解决方法:
 

复制代码 代码示例:
.test1 {
 text-align:justify;
 text-justify:distribute-all-lines;/*ie6-8*/
 text-align-last:justify;/* ie9*/
 -moz-text-align-last:justify;/*ff*/
 -webkit-text-align-last:justify;/*chrome 20+*/
}
@media screen and (-webkit-min-device-pixel-ratio:0){/* chrome*/
 .test1:after{
     content:".";
     display: inline-block;
     width:100%;
     overflow:hidden;
     height:0;
 }
}
 

例子:
 

复制代码 代码示例:
<!DOCTYPE HTML>
<html>
<head>
<title>文本两端对齐 by 司徒正美</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
.box1{
 background:red;
 width:30%;
}
.test1 {
 text-align:justify;
 text-justify:distribute-all-lines;/*ie6-8*/
 text-align-last:justify;/* ie9*/
 -moz-text-align-last:justify;/*ff*/
 -webkit-text-align-last:justify;/*chrome 20+*/
}
@media screen and (-webkit-min-device-pixel-ratio:0){/* chrome*/
 .test1:after{
     content:".";
     display: inline-block;
     width:100%;
     overflow:hidden;
     height:0;
 }
}
</style>
</head>
<body>
<div class="box1">
<div class="test1">姓 名</div>
<div class="test1">姓 名 姓 名</div>
<div class="test1">姓 名 名</div>
<div class="test1">所 在 地</div>
<div class="test1">工 作 单 位</div>
</div>   
</body>
</html>