大家好,我是半夏,一个刚刚开始写文的沙雕程序员.如果喜欢我的文章,可以关注 点赞 加我微信:frontendpicker,一起学习交流前端,成为更优秀的工程师~关注公众号:搞前端的半夏,了解更多前端知识! 点我探索新世界!

原文链接 ==>http://sylblog.xin/archives/19

前言

不知道有没有知道上面这个网站代表的意义!

1990年12月20日,Berners-Lee上线了世界上第一个网站:http://info.cern.ch/包含该网站诞生的信息和轶事。这就是万维网的诞生,Tim Berners-Lee则被视为它的缔造者。

第一眼看过去,我们看到的是啥?没错,是文字

text-align

定义

用于对齐块级元素的内部内容,这里用了内容而不是文本,

text-align属性看名字就知道肯定会影响文本的对齐方式,同时它也对内联元素/内联块级元素/块级元素产生影响



内联div设置了display:inline-block;

left 把文本排列到左边。默认值:由浏览器决定。

right 把文本排列到右边。

center 把文本排列到中间。

justify 实现两端对齐文本效果。

inherit 规定应该从父元素继承 text-align 属性的值。

这里着重说一下justify,这个属性大部分人应该还是很陌生的,

什么是两端对齐文本呢,一个小例子马上明白。

对于下面的div,我们没有设置text-align属性,如图所示第一行和第二行的行尾并不是对齐的,

.textAlign {
width: 200px;
height: 200px;
background-color: #2ecc71;
}
<div class="textAlign">
<span>我是内联span
我是第一行内容121
我是第二行内容ab
我是第三行内容1231231
</span>
</div>



当给.textAlign加上text-align:justify,就会变成下面的效果,第一行与第二行的行尾对齐。

相爱的direction

为什么会提到这个属性!仔细想想我们在没有给上面的div设置text-align的时候,文字是不是从左往右排列的,其实这就是direction的作用,它默认值是ltr,文本就会从左往右显示,但当你设置为rtl,他就会从右往左显示。

.textAlign {
direction: rtl;
}
<span>direction: rtl。</span>

请注意观察句号的位置。

如果 direction 属性是 ltr,则默认值为 left;如果 direction 属性是 rtl,则默认值为 right。

text-align-last

定义

允许强制换行之前控制最后(或唯一)行文本的对齐方式 - 例如段落的结尾或


标签之前的行。

left 将最后一行文本与容器左侧对齐。

right将最后一行文本与容器右侧对齐。

center 将容器内的最后一行文本居中。

justify 对齐文本的最后一行,使其跨越容器的整个宽度,如果需要,在单词之间插入空格以增加行长。

start根据文本的 将文本与行的“开始”对齐direction- LTR语言左对齐,RTL语言右对齐。

end根据direction文本的将最后一行与行的“结尾”对齐-direction:ltr为右,direction:rtl语言为左

auto默认值。对齐最后一行文本以匹配元素的text-align属性(如果已设置)。如果未设置,auto则将文本与开头对齐。

#auto {
text-align: right;;
text-align-last: auto;
}

inherit应用text-align-last父元素的属性。

text-indent

定义

text-indent 属性指定在元素的文本内容的第一行开始之前应该移动多少水平间距文本。间距是从块级容器元素的起始边缘计算的。本属性对行内元素无效。

起始边缘通常在左边,但如果在从右到左的模式下也可以在右边,例如方向属性。

text-indent 属性在块元素上指定时会被继承,这意味着它也会影响行内块的后代元素。在处理内联块子项时,您可能希望强制它们使用 text-indent: 0;。

语法

text-indent: | | inherit && [ hanging || each-line ]

其中

each-line 实验性API,不应在生产代码中使用。

缩进会影响块容器的第一行以及强制换行后的每一行,但不会影响软包装换行 后的行。

hanging 实验性 API,不应在生产代码中使用。

反转缩进的行。除第一行外的所有行都将缩进。

p {
text-indent: *em;
}

深度剖析text-align家族的更多相关文章

  1. Objective-C类成员变量深度剖析

    目录 Non Fragile ivars 为什么Non Fragile ivars很关键 如何寻址类成员变量 真正的“如何寻址类成员变量” Non Fragile ivars布局调整 为什么Objec ...

  2. WCF技术剖析之十九:深度剖析消息编码(Encoding)实现(下篇)

    原文:WCF技术剖析之十九:深度剖析消息编码(Encoding)实现(下篇) [爱心链接:拯救一个25岁身患急性白血病的女孩[内有苏州电视台经济频道<天天山海经>为此录制的节目视频(苏州话 ...

  3. 【渗透课程】第二篇下-HTTP协议的请求与响应深度剖析

    [渗透课程]第二篇下-HTTP协议的请求与响应深度剖析 HTTP1.1目前支持以下7种请求方法: 常见的MIME类型如下: 第一个数字有五种可能的取值: 目录 什么是请求方法?什么是请求头? HTTP ...

  4. [Android] Toast问题深度剖析(二)

    欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者: QQ音乐技术团队 题记 Toast 作为 Android 系统中最常用的类之一,由于其方便的api设计和简洁的交互体验,被我们所广泛采用 ...

  5. Objective-C类成员变量深度剖析--oc对象内存模型

    目录 Non Fragile ivars 为什么Non Fragile ivars很关键 如何寻址类成员变量 真正的“如何寻址类成员变量” Non Fragile ivars布局调整 为什么Objec ...

  6. Mysql binlog应用场景与原理深度剖析

    1 基于binlog的主从复制 Mysql 5.0以后,支持通过binary log(二进制日志)以支持主从复制.复制允许将来自一个MySQL数据库服务器(master) 的数据复制到一个或多个其他M ...

  7. .NET5.0 单文件发布打包操作深度剖析

    .NET5.0 单文件发布打包操作深度剖析 前言 随着 .NET5.0 Preview 8 的发布,许多新功能正在被社区成员一一探索:这其中就包含了"单文件发布"这个炫酷的功能,实 ...

  8. 《AngularJS深度剖析与最佳实践》简介

    由于年末将至,前阵子一直忙于工作的事务,不得已暂停了微信订阅号的更新,我将会在后续的时间里尽快的继续为大家推送更多的博文.毕竟一个人的力量微薄,精力有限,希望大家能理解,仍然能一如既往的关注和支持sh ...

  9. ASP.NET Core管道深度剖析(2):创建一个“迷你版”的管道来模拟真实管道请求处理流程

    从<ASP.NET Core管道深度剖析(1):采用管道处理HTTP请求>我们知道ASP.NET Core请求处理管道由一个服务器和一组有序的中间件组成,所以从总体设计来讲是非常简单的,但 ...

  10. 大众点评开源分布式监控平台 CAT 深度剖析

    一.CAT介绍 CAT系统原型和理念来源于eBay的CAL的系统,CAT系统第一代设计者吴其敏在eBay工作长达十几年,对CAL系统有深刻的理解.CAT不仅增强了CAL系统核心模型,还添加了更丰富的报 ...

随机推荐

  1. php的魔术函数和魔术常量

    0x00 魔术函数 1. __construct() 实例化对象时被调用, 当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用. 2. __des ...

  2. C++获取设备 PID,VID 信息

    可直接编译(设置成:使用多字节字符集) 转来的,代码: /* http://www.experts-exchange.com/Programming/Editors_IDEs/Q_24506125.h ...

  3. C++ 文件加解密

    通过文件二进制数据 与密钥进行异或处理,可加密文件 #ifndef __ENCRYPT__HEAD__ #define __ENCRYPT__HEAD__ #include <fstream&g ...

  4. 创建一个简单的Eureka注册中心

    微服务和分布式已经成了一种极其普遍的技术,为了跟上时代的步伐,最近开始着手学习SpringCloud,就从Eureka开始.他们俩就不做介绍了,网上的说明一堆,随便打开一个搜索引擎输入关键字都足够了解 ...

  5. ZAB 协议?

    ZAB 协议是为分布式协调服务 Zookeeper 专门设计的一种支持崩溃恢复的原子广 播协议. ZAB 协议包括两种基本的模式:崩溃恢复和消息广播. 当整个 zookeeper 集群刚刚启动或者 L ...

  6. weevely使用小结

    Weevely 写在前面 由于比赛不确定会不会提供菜刀或者蚁剑,这里我稍微对weevely进行简单介绍一下,具体还是请看官方文档,官方文档讲的很详细(前提你英语嘚不错) 官方文档:https://gi ...

  7. (stm32f103学习总结)—printf重定向

    一.printf重定向简介 我们知道C语言中printf函数默认输出设备是显示器,如果要实现在 串口或者LCD上显示,必须重定义标准库函数里调用的与输出设备相关的函数.比如使用printf输出到串口, ...

  8. ADAS最全整理

    为了实现「无人驾驶」的理想,各大整车厂和供应商目前正在开发「高级驾驶员辅助系统」(ADAS),随着 ADAS 慢慢被完善,车辆也在一步一步从 NHTSa 的 0 级过度到第 4 级,实现完全自动化.& ...

  9. 前端入门-day2(常见css问题及解答)

    写在前面 今天是入门前端的day2, 小伙伴们应该已经看了一些HTML的基础和CSS的基础了,是不是遇到了很多关于CSS的问题呢.因为HTML很少有太复杂的问题,所以直接写一篇关于CSS的常见问题及解 ...

  10. SVG中的坐标系统和坐标变换

    视野和世界 2D绘图中很多人会有一个误区,就是我绘图的区域是一个矩形区域.无论新建一个画布还是创建了一个容器,心里都想象里面有一个矩形区域.其实,在SVG当中,矩形区域只是视野,是我们看到的部分.实际 ...