【问题标题】:Trying to set width of a div using width of viewport do not work尝试使用视口宽度设置 div 的宽度不起作用
【发布时间】:2019-08-11 10:55:01
【问题描述】:

我尝试在视口宽度的帮助下设置字体大小,并希望使用

设置视口大小的 20% 的大小
h4{
  font-size: 20vw;
}

但它设置的字体大小很大。可能比预期的大 30 倍。我错过了什么吗?当我从教程Tryit Editor v3.6 进行测试时,它的工作原理就像预期的那样,所以我不知道会出现什么问题。

示例:通过使用 window.innerWidth,我得到了 1229px 的视口大小,其中 13vn 应该使文本适合 160px 的文本字段,据我所知。

【问题讨论】:

  • vn 不是一个单位 - vhvw...我假设您的意思是 vw
  • 您的意思是em 而不是vn
  • 假设 vn 是一个拼写错误,1vw 是视口宽度的 1%,所以如果视口是 1229px 宽,20vw 将使字体大小为 246px。但是,如果你想要 13vw,为什么还要写 20vw?
  • 对不起。拼写错误。我在我的代码中使用了 vw。
  • 这个例子是我计算的,不是代码本身。

标签: html css angular


【解决方案1】:

改用vw,它代表('viewport width')。另外,vw 是一个很大的数字,将字体定义为:

h4 {
  font-size: 1vw;
}

如果字体仍然太大,请使用“0.x”值。如果字体在某些时候变得太小,请使用 CSS 的 @media 定义最小尺寸,如下所示:

@media all and (max-width: 800px) { h4 { font-size: 12px; }

只有当屏幕足够小时,页面才会遵循这个命令。

【讨论】:

  • 我的意思是大众汽车。但我认为我以错误的方式使用了 vw。我认为那个 20vw 意味着例如 textmessage 将被设置为填充视口的 20%
  • 啊,不,字体大小与任何给定文本的宽度不同。如果是这样,任何文本块中的所有行的大小都会不同。
  • @Mikael 然后你可以为大众的 20% 宽度设置一个硬币容器,并将字体适合它。以此作为参考:css-tricks.com/fitting-text-to-a-container
  • 感谢您的建议。我认为这对我来说是最好的解决方案
猜你喜欢
  • 2013-02-04
  • 2014-11-01
  • 1970-01-01
  • 2016-01-24
  • 2012-10-25
  • 2013-10-01
  • 2014-11-03
  • 2021-10-05
  • 1970-01-01
相关资源
最近更新 更多