>印刷书籍是一种静态格式。从设计师的最初布局到新闻床,仓库,书架和您的手之旅,该书的输出不会改变。它完全按照设计师的构思。
涉及网络时,根据许多因素,例如各种设备,屏幕分辨率,个性化的浏览器设置等,相同的网站可能会大不相同。解释…
>…可能会给我们一个印象,即类型太小,其他人可能会导致我们在屏幕外错过一些重要的东西,而其他人则几乎完全不可能查看该网页。
>也就是说,“网络是文字的最佳场所。”,正如蒂姆·布朗(Tim Brown)在关于通用版式的演讲中所说的那样。可以“搜索,复制,翻译,链接到其他文档,可以打印,很方便,可以访问”。
>网络的灵活性并不意味着放弃控制。相反,作为网页设计师,我们仍然期望我们对我们投入的任何内容做出明智的选择,而文字也不例外。文本元素的布局方式,它们的颜色,大小,字体,所有这些以及更多传达网站的核心信息和品牌。
要操纵网络上的文本外观,我们选择的主要工具是CSS。 我将要在本文中介绍的CSS属性可以在CSS文本模块规范中找到。
>该模块描述了CSS的排版控件;也就是说,
控制源文本翻译为>的CSS的功能 格式化的,包裹的文本。构成基本文本或单词的基本单元,以及允许在给定文本中打破一个单词的位置,这在很大程度上取决于网站中使用的语言规则。因此,重要的是在HTML文档中声明此信息(通常在元素的lang属性中)。>
换句话说,CSS文本模块使用css。
>在这里,我不会讨论以下两个主题:
>字体,即字符的视觉表示,即字形及其属性; 与文本装饰有关的CSS的功能,例如下文,文本阴影和重点标记。
如果您很好奇,您会在CSS字体模块3级和CSS文本装饰模块3级中找到有关字体和文本装饰属性的最新文档。
>如果您希望每个单词的首字母在大写中显示在所有其他字母的外观(在HTML文档中的情况下如何),则使用该值资本化将实现这一目标:
CSS:
请注意如何不遵循标题案例约定:实际上,上面示例中的所有第一个字母都出现了大写,包括“ in”一词。打算遵循有关标题的文学惯例的作者将需要在源文本中手动操纵字母。
如果您的目标是在大写中显示所有字母,则无论他们在HTML文档中的情况如何
html:
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>CSS:
<span>h2 { </span> <span>text-transform: capitalize; </span><span>}</span>
html:
CSS:
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
<span>h2 { </span> <span>text-transform: uppercase; </span><span>}</span>全宽度值
html:
CSS:
<span><span><span><h2</span>></span>Alice's Adventures in Wonderland<span><span></h2</span>></span></span>当应用全宽时,Firefox中的角色是什么样子:
进一步说明
这就是Firefox中的外观:
请注意连字符后的第一个字母如何被大写。另一方面,下面的文本与Chrome中显示的文本相同:
查看文本转换属性值的演示。
按下选项卡键,空格键或强迫某些文本折断下一行(使用> enter键或
tag),您可以在源中创建空白空间文档。
默认情况下,浏览器的空间崩溃序列倒入一个空间,删除了线路断裂,并且文本包装线条以适合其容器。这对我们来说很方便,因为它允许我们缩进和单独的文本块,以使我们的源文档可读和可维护,而不会影响浏览器中的内容的显示方式。
> 但是,如果这不是您的目标,该怎么办?例如,您想保留在HTML文档中创建的空白空间。一个常见的情况是,当您编写一些文本时,该文本旨在显示为正确的缩进代码段。或者,您希望将一些文本显示在一行中,而不会破裂。 在这种情况下,当您打算覆盖浏览器的默认行为时,White Space属性提供了一些有趣的选项。正常关键字将浏览器重置为默认行为:所有额外的空白空间都折叠成一个字符,并在到达容器边缘时包裹着线条。
>
pre值> PRE关键字允许您通过保留源文档中存在的所有白色空间和强制新线条来显示文本。在溢出容器时,文本不会包裹成新线路。
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
如果使用选项卡来创建空白,则可以通过将其设置为整数值来控制其大小。
tab-size是一个具有不一致的浏览器支持的属性,但是如果您确实无法忍受默认选项卡的字符长度,则这里有一个覆盖所有基础的polyfill。
pre-wrap值<span>h2 { </span> <span>text-transform: capitalize; </span><span>}</span>
>假设您希望源文档中的白色空间保存在浏览器显示器中。但是,您还想让线条包裹在其到达容器边缘时。
>预包上的关键字将帮助您获得所需的结果。>
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
但是,
缩小浏览器屏幕,您会注意到包裹的线条以适合其容器。
>对于白空间属性的最终有趣值是预上线。在一定程度上,它将空间序列倒入一个空间并允许包裹,它的行为就像正常。但是,如果HTML文档中存在新的线字符或
标签,则将其保存在浏览器显示中。
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
nowrap value
上面的
是链接,后跟»符号。将此字符落到下一行,例如在流体网络布局中,这是不可取的。>
在这种情况和类似情况下(例如,想想图标),NowRap值非常方便。
> Sara Soueidan在CODROPS CSS参考中带给我们另一个有趣的用例。萨拉指出,白色空间属性可以应用于任何内联内容,包括图像。>
>通过防止图像包装并强迫它们在其容器内的一条线上显示在可滚动元素中的图像的水平列表中,它有时与值nowrap一起使用。
>我通过使用白色空间:nowrap创建基本的jQuery旋转木制来放大了这一建议。这是演示:
>请参阅codepen上的sitepoint(@sitepoint)上的图像旋转曲线上的word-wrap属性。有时,控制单词内部的线路断裂
有时会出现设计外观,因为一个长词无法将其包裹在下一行,从而溢出了其容器。博客评论中的长URL或一些用户生成的长词是常见的情况。
>以下CSS属性旨在为我们在网络上处理长词的控制。。
> wrap/Overflow-wrap属性>
通过使用正常值,单词在允许的突破点处断裂,例如,空格,连字符等。>
break-word值允许单词内的任意突破点,如果该行在某些其他可接受的点上不能折断。
下面的图片显示了一个溢出其容器的长词的显示:
>让我们设置Overflow-wrap属性,以及为遗产目的,词包属性属性,将其设置为brake-word值:
…现在,长词的显示已分为多行以适合可用空间。
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
连字符属性
<span>h2 { </span> <span>text-transform: capitalize; </span><span>}</span>>您还可以防止显示连字符。在这种情况下,将连字符的属性设置为无:
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>>此外,如果单词在标记中和文本包裹在下一行中,则可以在单词中的线断裂上显示连字符字符。这是用手册的值来完成的:
<span>h2 { </span> <span>text-transform: uppercase; </span><span>}</span>
在供应商前缀的帮助下,浏览器对连字符属性的支持在所有主要浏览器上都很好,尽管并非没有一些略有不一致。 Chrome(v.44)和Opera(V.30)的最新版本在写作时不支持属性值自动。
操纵单词和字母之间的空间
,带来了巨大的改进。
> CSS提供单词间距和字母间隔属性,以控制单词和字母之间的间距的外观。
>正常显示字母之间的默认空间。空间的量取决于所使用的字体或浏览器。
><span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>除了字体或浏览器定义的默认间距外,
<span>h2 { </span> <span>text-transform: capitalize; </span><span>}</span>
>百分比的工作方式与
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
>您可以将字母间隔属性设置为两个值之一:normal或
使用普通叶在字母之间的默认字体间距。它还重置先前指定为其默认值的任何字母间隔长度。例如,如果您在父元素上指定了1em的字母间隔值,但希望在子元素上显示默认值,则正常是您的朋友。
<span>h2 { </span> <span>text-transform: uppercase; </span><span>}</span>
<span><span><span><h2</span>></span>Alice's Adventures in Wonderland<span><span></h2</span>></span></span>
>
>另外,您也可以对单词间隔和字母间隔进行动画。但是,在字母间距上使用CSS过渡表明,当前版本的Firefox(V.39)未识别正常值。为了克服这一点,只需用0em替换正常。这是一个使用单词间隔和字母间隔的演示,其中包含动画文本:
>请参阅codepen上的sitepoint(@sitepoint)的CSS字母间隔和单词间隔属性的笔
最新的CSS文本对齐选项>文本 - 空地属性已经存在了一段时间。它控制在块容器中如何对齐文本和图像等内联内容。 kewings左右与左右与右侧的内联内容对齐。将文本对准设置为中心将内容对齐到其容器的中心。最后,合理的关键字为内容合理,使每行的长度相同(除了最后一行,如果它不足以达到其容器的边缘)。
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>
<span>h2 { </span> <span>text-transform: capitalize; </span><span>}</span>
应用文本校友:与内联元素的匹配父母确保孩子继承与父母相同的对准。继承的开始或结束值是根据父语言方向计算的,导致左或向右输出。
CSS的新
也是文本偏见的属性。此属性控制段落结束前或查看一个Codepen演示,显示这些功能 缩进文本
缩进一行文本,通常是段落中的第一行,您经常在网站上经常遇到。取而代之的是,将一个空线作为段落之间的分离的常见视觉标记。有时会使用段落的第一行来创建适合特定设计的经典外观。
通常使用PX或EM单元设置长度的值:
使用百分比值设置一个百分比:
每条线的值在块容器内以及强制折叠后的每条线内的外观,即,即通过击中
键或在HTML源中插入
标签。但是,柔软的包裹断裂后的第一行的显示,即,将其包裹到下一行以适合其容器的文本不受影响。
悬挂的值导致所有线路以外的第一行显示为缩进。
<span><span><span><h2</span>></span>alice's adventures in wonderland<span><span></h2</span>></span></span>>每个线和悬挂值都是实验值,在编写时尚未在任何浏览器中实现。
查看此演示以查看“动作”中的文本
> CSS在网络文本操纵方面一直在取得巨大进展,尽管期望做更多。除了对一些最新属性的粗略浏览器支持外,例如,如果CSS提供了Kerning功能,即有机会在给定单词中操纵两个字母之间的距离。 在这篇文章中,我深入研究了许多CSS属性,这些属性控制了网络上文本的格式格式,线条包装和对齐。可以随意使用演示进行实验。
我期待您的反馈!
>>经常询问有关CSS属性的问题(常见问题解答)
>如何使用CSS属性来控制Web版本?您可以调整字体尺寸,字体家族,线高,文本对齐,文本颜色等等。例如,要更改字体大小,您可以使用“字体大小”属性并指定像素,EMS或百分比中的大小。同样,要更改字体系列,您可以使用“字体家庭”属性并指定字体名称。请记住要包含后备字体,以防万一首选在用户的系统上不可用。>'text-align'属性在css?如何使CSS中左侧的列表项目对齐?
我如何在CSS中迭代文本? CSS中的属性用于斜体文本。您可以将其价值设置为“斜体”,以使文本斜体。例如,“字体风格:斜体”会斜体化文本。
以上是CSS属性控制网络版式的详细内容。更多信息请关注PHP中文网其他相关文章!