CSS秘密花园: 连体字母_html/css_WEB-ITnose
《 CSS Secrets 》是 @Lea Verou 最新著作,这本书讲解了有关于CSS中一些小秘密。是一本CSSer值得一读的一本书,经过一段时间的阅读,我、@南北和@彦子一起将在W3cplus发布一系列相关的读后感,与大家一起分享。
和人一样,不是所有的字形放在一起的时候都可以显得很自然。例如,对于大多数衬线字体的 f 和 i 而言。字母 i 上边的小点经常和 f 中的横线重叠,使得它们的组合看起来非常笨拙。
为了解决这个问题,类型设计师经常会在他们的字体中添加额外的字符,称为连字符。这些都是单独设计的字形的二联体或三联体,用于排版方案中当对应的字符彼此相邻时。例如,如上图中的一些常见的连体字母,它们看起来比之前对应字符单独放在一起的时候好了很多。
还有一些所谓的自由连体字“discretionary ligatures”:
事实上,对于不起眼的 & 符号,我们都知道并且喜欢把它作为字母 e 和字母 t 的连写(“et”在拉丁文中表示“and”)。
它被设计成一个另类的风格,而不是因为它们的等价字符对相邻时出了问题。
但是,浏览器从来不会默认使用自由连体字(尽管这是正确的),并往往不会使用常见的连字体(这是一个bug)。事实上,直到最近,显式使用任何连写字的唯一方法就是使用它的等效Unicode字符——如, fi 表示 fi 连写。这种方法比解决问题带来了更大的麻烦:
- 很明显,它使得这些标签很难被阅读,也很难编写(能知道 define 是什么意思纯属运气)。
- 如果当前字体不包含这个连写字符,结果将是乱七八糟的(如下图所示)。
- 不是每个连写字都有一个等同的、标准的Unicode字符。例如, ct 连写字不对应任何的Unicode字符,所有包括它的字体都需要把它放置在Unicode PUA(私人使用区域)块中。
- 它会打破文本的可访问性,如复制/粘贴,搜索,和语音转换。很多应用都可以非常智能地处理这些,都不是所有都可以。它甚至可以打破一些浏览器的搜索。
所以,在这种时候,总需要一个更好的方法,对吧?
解决方案
在 CSS3 的中, font-variant 可以被转换成 shorthand ,包含了很多新的 longhand 属性。其中之一是 font-variant-ligatures ,特别为连写的开启和关闭而设计的。要打开所有可能的连写字,你需要使用三个标识符:
font-variant-ligatures: common-ligatures discretionary-ligatures historical-ligatures;
该属性是可继承的。你可能会发现自由连体字“discretionary ligatures”妨碍可读性,想要把它们关掉。在这种情况下,你可能希望只打开常用的连写字:
font-variant-ligatures: common-ligatures;
你甚至可以明确地把其它两种连写字关闭:
font-variant-ligatures: common-ligatures no-discretionary-ligatures no-historical-ligatures;
font-variant-ligatures 还接受 none 值,就是完全把连写字关闭。不要使用 none 值,除非你知道自己设置的是什么。要把 font-variant-ligatures 重置为初始值,你需要使用 normal ,而不是 none 。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Artikel ini membincangkan html & lt; kemajuan & gt; elemen, tujuan, gaya, dan perbezaan dari & lt; meter & gt; elemen. Tumpuan utama adalah menggunakan & lt; kemajuan & gt; untuk menyelesaikan tugas dan & lt; meter & gt; untuk stati

Artikel ini membincangkan html & lt; datalist & gt; elemen, yang meningkatkan bentuk dengan menyediakan cadangan autokomplete, meningkatkan pengalaman pengguna dan mengurangkan kesilapan. Kira -kira: 159

Artikel membincangkan amalan terbaik untuk memastikan keserasian silang pelayar HTML5, memberi tumpuan kepada pengesanan ciri, peningkatan progresif, dan kaedah ujian.

Artikel ini membincangkan html & lt; meter & gt; elemen, digunakan untuk memaparkan nilai skalar atau pecahan dalam julat, dan aplikasi umum dalam pembangunan web. Ia membezakan & lt; meter & gt; dari & lt; kemajuan & gt; dan Ex

Artikel ini membincangkan menggunakan atribut pengesahan bentuk HTML5 seperti had, corak, min, max, dan panjang untuk mengesahkan input pengguna secara langsung dalam penyemak imbas.

Artikel ini membincangkan tag Meta Viewport, penting untuk reka bentuk web responsif pada peranti mudah alih. Ia menerangkan bagaimana penggunaan yang betul memastikan skala kandungan yang optimum dan interaksi pengguna, sementara penyalahgunaan boleh membawa kepada isu reka bentuk dan kebolehaksesan.

Artikel ini membincangkan & lt; iframe & gt; Tujuan TAG dalam membenamkan kandungan luaran ke dalam halaman web, kegunaan umum, risiko keselamatan, dan alternatif seperti tag objek dan API.

Giteepages Statik Laman Web Penggunaan Gagal: 404 Penyelesaian Masalah dan Resolusi Ralat Semasa Menggunakan Gitee ...
