HTML   发布时间:2022-04-14  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了html – CSS字体大小(响应),相对于设备分辨率?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
假设我们有以下test.htm:
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <style type="text/css">
.testdiv,.testdivB,.testdivC {
  width: 50%;
  height: 30%;
  margin: 6px;
  border: 2px solid gray;
  font-size: 4em;
}
.testdivB {
  font-size: 12px;
}
.testdivC {
  font-size: 30pt;
}
  </style>
</head>

<body>

  <div class="testdiv">Test one wriTing</div>
  <div class="testdivB">Test another wriTing</div>
  <div class="testdivC">Test three wriTing</div>

</body>
</html>

我已经尝试使用开发人员工具在Chromium中对此进行测试,这允许我模拟不同的设备;这里:

* Apple iPhone 4        : device resolution  320 x  480,a/r 0.666667
* Google Nexus 10       : device resolution  800 x 1280,a/r 0.625
* Amazon Kindle Fire HDX: device resolution 1600 x 2560,a/r 0.625

结果如下:

在这个例子中,所有设备都是纵向的,并且具有“几乎”相同的宽高比(~0.6),即使它们具有截然不同的分辨率.

因此,在前两种情况下,我得到的字体大小大致相对于设备屏幕大小,这是我想要实现的(尽管我很困惑,testdivB也显示为几乎相同)大小,当它应该更小) – 所以这一切都很好.

但是,在第三个例子中,在具有最大分辨率的设备上,testdivB不出所料(因为它在px中定义)相对于设备屏幕尺寸要小得多; testdivA也不是很令人惊讶,因为em与浏览器的“计算字体大小”相关 – 如果我没记错的话,那个也用像素表示.

但是,我认为pt会虑设备屏幕分辨率,但它看起来不是:

http://www.w3.org/Style/Examples/007/units.en.html

好吧,我有什么选择,在所有三种情况下实现大致相同的字体大小(相对于设备屏幕大小):

>如果我不想使用JavaScript(只有HTML CSS)?
>如果我确实想使用JavaScript(我猜有一种方法可以查询设备屏幕 – 而不是视口 – 分辨率,但我不确定是否确实存在)?

解决方法@H_450_29@
我刚刚编写了一个关于如何使用纯HTML / CSS实现此目的的小教程/示例:

响应单位(vmin / vmaX)

#small {
    font-size: calc(1em + 1vmin);
}

#medium {
    font-size: calc(1em + 2vmin);
}

#large {
    font-size: calc(1em + 3vmin);
}
<div id="small">small text</div>
<div id="medium">Medium text</div>
<div id="large">Large text</div>

规则vmin在您的上下文中非常有用.它需要vmin:屏幕最小边的1/100.无论方向如何.将它与calc()中的基本1em相结合,为我们提供了一种在字体大小上应用小型自定义响应方面的好方法.

替代方法(vw / vh)

#small {
    font-size: calc(1em + 1vw);
}

#medium {
    font-size: calc(1em + 2vw);
}

#large {
    font-size: calc(1em + 3vw);
}
<div id="small">small text</div>
<div id="medium">Medium text</div>
<div id="large">Large text</div>

如果您希望对实际纵横比应用更多控制,我建议使用vw超过vmin.视口宽度(vw)占视口宽度的1/100.

基于视口宽高比(vmin和vmaX)的响应单位:

#test1 {
    font-size: calc((.4em + 1vmin) + (.4em + 1vmaX));
}

#test2 {
    font-size: calc((.4em + 2vmin) + (.4em + 2vmaX));
}

#test3 {
    font-size: calc((.4em + 3vmin) + (.4em + 3vmaX));
}
<div id="test1">small text</div>
<div id="test2">Medium text</div>
<div id="test3">Large text</div>

我对这个解决方案非常满意,这种方式允许我们同时虑视口宽度和长度.我们将基本字体大小分为两个(在这种情况下为.4em)并将其与1vmin和1vmax相乘,之后我们添加两个值来建立字体大小.

大佬总结

以上是大佬教程为你收集整理的html – CSS字体大小(响应),相对于设备分辨率?全部内容,希望文章能够帮你解决html – CSS字体大小(响应),相对于设备分辨率?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。