css 字体单位之间的区分以及字体响应式的实现详
问题场景
在实现响应式布局的过程中,如何设置字体大小在不同的视窗尺寸以及不同的移动设备的可读性?
需要了解的有:
1.px,em,pt之间的换算关系
1em = 16px
1px = 1/16 em = 0.0625em
////以下用的比较少//////
1em = 12pt
1px = 3/4 pt = 0.75pt
1pt = 1/12 em 0.0833em
1pt = 4/3 px = 1.3333px
2.任意浏览器默认字体都是16px。所有未经调整的浏览器默认尺寸为 1em=16px
3.chrome强制最小字体为12px,即使设置成10px,最终会显示成12px。这点解释了为什么有时候在ie或mozllia里的字体大小与chrome有初入
4.px,em,rem vw,vh,vmin的区别在哪?
px
相对单位。相对于屏幕分辨率。这就是为什么分辨率越大字体越小的原因所在。那px的优缺点又如何?
优点比较稳定、精确。
缺点如果对页面进行缩放,影响文本可读性。可通过使用em作为字体单位解决这个问题。
em
相对单位。根据基准数值缩放字体大小,是一个相对值,而非具体值。基准值取决于,父级元素所设置的font-size。如果父级元素未设置font-size 依次向上寻找直到根节点。
优点弥补了px的不足
缺点过于依赖父级节点,容易出现字体大小重复声明。
rem:
相对单位。相对于根结点html的字体大小。
缺点避免了em依赖父级元素字体大小
优点参考系只有一个,根节点字体大小
- <SPAN style="FONT-SIZE: 16px">html{font-size:100%}
- //响应式的字体大小相对于根节点变化
- @media (min-width: 640px) { body {font-size:1rem;} }
- @media (min-width:960px) { body {font-size:1.2rem;} }
- @media (min-width:1100px) { body {font-size:1.5rem;} }
- </SPAN>
5.为什么根结点字体大小要设置成62.5%?
上面介绍过浏览器默认字体大小为16px,如果想要在不同的页面尺寸下设置字体大小分别为12、14、18px怎么办?
难道必须使用 12/16 rem,14/16rem,18/16rem 这种方式来计算字体的相对大小吗?
更简便的方式,在根结点设置字体大小为10px,这样一来在media里可以直接写成1.2rem,1.4rem,1.8rem。 根结点如果设置成10px,那么相对于浏览器默认字体大小为 font-size:10/16 % 即 font-size:62.5%
- <SPAN style="FONT-SIZE: 16px">html{font-size:10px}
- //响应式的字体大小相对于根节点变化
- @media (min-width: 640px) { body {font-size:1m=1.2 rem;font-size:12px; /某些浏览器不支持rem
长沙网站设计
- 如何进行东阳SEO关键词优化?
- 边坝哪有关键词排名优化:提升你的网站流量与
- 安国百度优化服务:提升您的在线可见性
- 阜康新手做SEO怎么做
- 山西seo网站排名关键词优化:提升您网站曝光率
- 临沂seo网站排名关键词优化:提高你的网站可见
- 广西SEO网站推广怎样付费比较合理
- 双辽SEO网站推广:提升你的网站可见性与流量
- 辽宁企业网站优化购买方式有哪些
- 提升宝清百度SEO排名的实用技巧与策略
- 静宁百度SEO排名:提升您网站曝光率的关键策略
- 彭州百度SEO排名的提升策略和实施指南
- 广南百度关键词SEO:提升网站排名的关键策略
- 辽宁关键词优化怎么做论坛营销
- 吉林百度seo排名如何做到让用户满意
- 内黄百度优化服务:提升在线可见性的关键