对 text-align:justify 不大了解的,可以先看这里:从css text-align:justify 谈谈 text-align 文本对齐方式,讲的比较浅显易懂,本篇相对深入些,最好先看前面的

写代码的时候遇到这样一个设计图:

文字格式是两端对齐,首先想到的是用 letter-spacing ,不过很麻烦,不太方便。实际上 text-align:justify, 可以实现两端对齐!以下图为例:

<div class="par">
<span class="son">
上海
</span>
<span class="son">
上海活动
</span>
<span class="son">
内蒙古活动上
</span>
</div>
* {
margin:;
padding:;
} .par {
width: 170px;
overflow: hidden;
border: 1px solid grey;
text-align: justify;
padding: 10px;
} .son {
font-size: 15px;
}
.son::after {
content: '';
height:;
width: 100%;
display: inline-block;
}

注意点:


1、需要两端对齐的元素改成了 span,内联元素,当然你想用 div 也行,不过得设置 display:inline; 原理应该很好理解,text-align 本来就是针对文字内容样式的,当然应该是内联样式;


2、.son 都用了伪元素,核心样式设置了 height:0、width:100%、display:inline-block; 这是用伪元素多撑一行,因为 text-align:justify 对最后一行没用;display 不能为 block,否则无效,因为 text-align 是针对文本内容的,对于块级元素自然无效,但是设置 inline 又无法设置宽高多占一行,所以只能 inline-block;


3、text-align:justify 加在父元素上


后面是针对 IE8 ,正常可以忽略不用看了。

不幸的是,IE8 不行,或者 IE 都不行,要兼容 IE 也不是不行,方法倒是想出来了,不过你肯定不会用来给文字做这样的排版,效果图:

CSS:

* {
margin:;
padding:;
}
.par {
width: 170px;
overflow: hidden;
border: 1px solid grey;
text-align:justify;
padding:10px;
}
.son {
font-size: 15px;
display: inline-block;
}
.justify {
height:;
width: 100%;
display: inline-block;
}

HTML:

<div class="par">
<span class="son">上</span>
<span class="son">海</span>
<span class="justify"></span>
<span class="son">上</span>
<span class="son">海</span>
<span class="son">活</span>
<span class="son">动</span>
<span class="justify"></span>
<span class="son">内</span>
<span class="son">蒙</span>
<span class="son">古</span>
<span class="son">活</span>
<span class="son">动</span>
<span class="son">上</span>
<span class="justify"></span>
</div>

我知道你被这样的代码吓到了,,,我也是,,,但是换成照片两端对齐就会很好用,效果图(左边 chrome ,右边 IE8):

代码是这样的:

CSS:

* {
margin:;
padding:;
}
.par {
width: 170px;
overflow: hidden;
border: 1px solid grey;
text-align:justify;
padding:10px;
}
.son {
font-size: 15px;
display: inline-block;
}
.justify {
height:;
width: 100%;
display: inline-block;
}
img {
width: 30px;
height: 30px;
}

HTML:

<div class="par">
<span class="son"><img src="data:images/google.png" alt="" /></span>
<span class="son"><img src="data:images/google.png" alt="" /></span>
<span class="justify"></span>
<span class="son"><img src="data:images/google.png" alt="" /></span>
<span class="son"><img src="data:images/google.png" alt="" /></span>
<span class="son"><img src="data:images/google.png" alt="" /></span>
<span class="justify"></span>
<span class="son"><img src="data:images/google.png" alt="" /></span>
<span class="son"><img src="data:images/google.png" alt="" /></span>
<span class="son"><img src="data:images/google.png" alt="" /></span>
<span class="son"><img src="data:images/google.png" alt="" /></span>
<span class="son"><img src="data:images/google.png" alt="" /></span>
<span class="justify"></span>
</div>

这种用法咱们总结下:


1、两端对齐的元素要是一个个 inline-block 元素,所以图片可以直接放,文字就要被迫拆开了


2、需要换行的,用 span.justify 换,样式还和之前一样,空占一行,这样同一行的会自动两端对齐


3、其他和前面一样,但是有一点要注意, span 元素间必须有间隔,譬如正常换行是可以的、有空格也是可以的,如果连在一起就没有效果


举例:

代码:

参考文章,推荐:(第一篇讲的很细致)

从css text-align:justify谈谈text-align文本对齐方式
text-jusyify下的inline-block自适应列表布局末行对齐修复实例页面

行文仓促,如有错误,欢迎批评指正~~~

text-align:justify 使用参考的更多相关文章

  1. __attribute__ ((section(".text")))的测试

    一.测试原因 在学习u-boot的环境变量过程中,看到有如此的代码,现对涉及到的内容进行实验测试. 二.测试目的 1.了解gcc允许对段的属性进行更改的方法. 2.解决”ENV_IS_EMBEDDED ...

  2. Flutter 布局(二)- Padding、Align、Center详解

    本文主要介绍Flutter布局中的Padding.Align以及Center控件,详细介绍了其布局行为以及使用场景,并对源码进行了分析. 1. Padding A widget that insets ...

  3. Extjs Vbox布局方式,以及align种类,flex,pack属性含义简介

    VBox布局方式,熟悉下一下几个主要属性: 一.align:字符类型,指示组件在容器内的对齐方式.这个是基于容器的左上角来排列的.pack不同,pack是根据容器的最上边来显示的. 1.left(默认 ...

  4. Angular material mat-icon 资源参考_Editor

    ul,li>ol { margin-bottom: 0 } dt { font-weight: 700 } dd { margin: 0 1.5em 1.5em } img { height: ...

  5. Sublime Text安装Package Control

    原来Sublime Text3安装Package Control很麻烦,现在简单的方法来了! 一.简单的安装方法 使用Ctrl+`快捷键或者通过View->Show Console菜单打开命令行 ...

  6. Sublime Text安装与配置

    1.1 下载安装Sublime Text 3 参考博客:https://www.cnblogs.com/Rising/p/3741116.html 1.下载安装Sublime Text 3  1. 下 ...

  7. HTML 标签元素的 align 属性

    align 属性规定段落中文本的对齐方式. 有 left  right center  justify 这些参数 left  right center  就是左对齐 右对齐 中间对齐 justify  ...

  8. sencha警告:[WARN][Anonymous] [Ext.Loader] Synchronously loading 'Ext.field.Text'

    chrome开发者工具下提示: [WARN][Anonymous] [Ext.Loader] Synchronously loading 'Ext.field.Text'; consider addi ...

  9. Sublime Text 3使用方法

    一.下载安装 Sbulime Text 3官网   参考网站:http://lucida.me/blog/sublime-text-complete-guide/注意在安装时勾选Add to expl ...

随机推荐

  1. linux下各种形式的shell加法操作总结

    linux 下shell加法操作总结: #!/bin/bash   n=1;echo -n "$n "   let "n = $n + 1" echo -n & ...

  2. ubuntu下配置.net core运行环境

    Ubuntu 16.4执行: sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotne ...

  3. Excel去除单元格中的汉字

    Alt+F11,插入,模块 Function RemoveChinese(rng As Range) s = Len(rng.Text) For i = 1 To s txt = StrConv(Mi ...

  4. C#面试题汇总2

    http://www.cnblogs.com/wangjisi/archive/2010/06/14/1758347.html 用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及 ...

  5. zookeeper(五):Zookeeper中的Access Control(ACL)

    概述 传统的文件系统中,ACL分为两个维度,一个是属组,一个是权限,子目录/文件默认继承父目录的ACL.而在Zookeeper中,node的ACL是没有继承关系的,是独立控制的. Zookeeper的 ...

  6. Android在非UI线程中更新UI的方法

    1.使用Thread+Handler实现非UI线程更新UI界面 在UI Thread中创建Handler.用sendMessage(message)或者obtainMessage(result, ob ...

  7. C语言中的传值调用

    在c语言中每个变量都有两个属性一个是值,一个是址. 比方: int a = 2; 变量a的值是2,变量a的地址,能够用&取地址操作符获取,即&a. 因此以C语言的函数传递中具备两种方式 ...

  8. 聊一聊Android的消息机制

    聊一聊Android的消息机制 侯 亮 1概述 在Android平台上,主要用到两种通信机制,即Binder机制和消息机制,前者用于跨进程通信,后者用于进程内部通信. 从技术实现上来说,消息机制还是比 ...

  9. Android App常规测试内容

    转自:https://mp.weixin.qq.com/s?__biz=MzU0NjcyNDg3Mw==&mid=2247484053&idx=1&sn=116fe8c7eed ...

  10. Windows 内核(WRK)简介

    引子 WRK 是微软于 2006 年针对教育和学术界开放的 Windows 内核的部分源码,WRK(Windows Research Kernel)也就是 Windows 研究内核,在 WRK 中不仅 ...