当前位置: 首页 > Web前端 > HTML5

CSS揭秘:CSS特殊字体技巧汇总

时间:2023-04-05 14:26:12 HTML5

内容:1.连字符换行2.插入换行3.自定义下划线4.特殊文字效果1.连字符换行问题描述:当我们显示段落文字时,它是经常需要用到两端对齐的功能,但是它有一个致命的缺陷,就是会自动调整字符的间距,让单词不会自动换行,如下图。视觉效果很差,所以需要一个方法在正确的地方断字,让单词在遇到换行的时候自动拆分,也就是所谓的连字符换行,可以实现用一行代码;连字符:自动;2、插入换行问题描述:当我们需要手动插入换行时,首先想到的就是
标签。有没有什么办法可以在不使用new标签的情况下灵活实现换行的功能呢?其实使用伪类元素是最好的选择。将伪类元素的内容设置为'\A'或者'0x000A'可以实现换行,但是默认情况下,插入的换行符会和附近的空白合并,这是我们需要手动在文档中保留换行符;dd::after{内容:'\A';white-space:pre;}这样,我们可以在现有标签之后添加新标签,而无需在新行中添加新标签。但是需要注意的是,如果在dd标签伪类中加入了换行符,那么后面所有的dd标签都会受到影响,所以可以通过父子标签或者兄弟标签来限制受影响的dd标签,比如:dt>dd::after{内容:'\A';white-space:pre;}3.自定义下划线问题描述:正常的下划线效果是通过text-decoration:underline实现的,样式固定,有时不能满足视觉要求。还有其他方法可以替代它。下划线效果?最简单的想到就是用边框来模拟下划线。border可以实现宽度和颜色,更加灵活多变。a{文字装饰:无;border-bottom:1pxsolidgray;}但是这种方式有几个问题,首先是如何控制下划线和文字之间的空隙,我们可以设置框的显示为inline-block,然后设置line-height控制下划线与文字的距离,使文字离下划线更近。这导致了另一个问题。如果下划线文字换行,会造成如下效果:最后的解决办法还是要靠渐变!这是一个高级技术,你可以理解以下内容:background:linear-gradient(gray,gray)no-repeat;背景大小:100%1px;背景位置:01.15em;4.特殊文字效果几种特殊文字效果的实现,如:凸版印刷、镂空文字、文字发光、文字凸起效果,其实都是通过各种阴影效果组合而成的视觉效果。(1)凸版印刷背景:hsl(210,13%,60%);color:hsl(210,13%,30%);text-shadow:01px1pxhsla(0,0%,100%,.8);(2)轮廓文字效果背景:deeppink;color:white;text-shadow:1px1pxblack,-1px-1pxblack,1px-1pxblack,-1px1pxblack;(3)外层文字发光背景:#203;颜色:#ffc;文字阴影:00.1em,00.3em;(4)凸起文字背景:#58a;颜色:白色;文字阴影:01pxhsl(0,0%,85%),02pxhsl(0,0%,80%),03pxhsl(0,0%,75%),04pxhsl(0,0%,70%),05pxhsl(0,0%,65%);