CSS: 首字母字体变大时下划线不对齐的解决方法

昨天在写2017年百度ife任务六的时候遇到了一个排版问题,需要首字母字体变大的同时,下划线对齐。

          首先使用了 ::first-letter伪元素的选择器,将字体变大后,发现下划线没法对齐,代码如下:

<p>dddddddddd</p>


p{

    font-size: 44px;

    text-decoration: underline;

}

p:first-letter{

    font-size:80px;

}

后来改用 font-variant、text-transform 属性后解决了这个问题,代码如下;

1

2

3

4

5

6

p{

         font-size: 44px;

    text-decoration: underline;

    font-variant: small-caps; //关键属性

    text-transform: capitalize; //关键属性

1

}

    text-transform 属性

这个属性会改变元素中的字母大小写,而不论源文档中文本的大小写。

如果值为 capitalize,则要对某些字母大写,但是并没有明确定义如何确定哪些字母要大写,这取决于用户代理如何识别出各个 “词”。

值 描述

none 默认。定义带有小写字母和大写字母的标准的文本。

capitalize 文本中的每个单词以大写字母开头。

uppercase 定义仅有大写字母。

lowercase 定义无大写字母,仅有小写字母。

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

兼容性:

浏览器兼容:IE、Firefox、Chrome、Safari、Opera

注释:任何的版本的 Internet Explorer (包括 IE8)都不支持属性值 "inherit"。所有浏览器都支持 text-transform 属性。


font-variant 属性

设置小型大写字母的字体显示文本,这意味着所有的小写字母均会被转换为大写,但是所有使用小型大写字体的字母与其余文本相比,其字体尺寸更小。(意味着已经使用大写字母的文本字体会更大)。

值 描述

normal 默认值。浏览器会显示一个标准的字体。

small-caps 浏览器会显示小型大写字母的字体。

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

兼容性:


所有主流浏览器都支持 font-variant 属性。注释:任何的版本的 Internet Explorer (包括 IE8)都不支持属性值 "inherit"

。详细资料,请加群获取:586656942

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值