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 属性后解决了这个问题,代码如下;

p{
	
	font-size: 44px;
	text-decoration: underline;
	font-variant: small-caps; //关键属性
	text-transform: capitalize; //关键属性
}

  

 

  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"

转载于:https://www.cnblogs.com/yy7525213/p/6603525.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值