【发布时间】:2021-06-27 23:16:28
【问题描述】:
HTML 和 CSS
.pickthetime {
height: calc(var(--vh, 1vh) * 3);
width: calc(var(--vw, 1vw) * 25);
align-content: center; // center looks better, also tried left to stop it from breaking a new line on Safari on iOS
font-weight: 300;
}
<input class="pickthetime" type="time" id="pickthetime" name="pickthetime" required />
正如您在 CSS 上看到的那样,我将实际选择器设置为特定大小。无论我做什么,我似乎都无法根据时间选择器的大小自动缩放字体大小。如果我使用calc(var(--vw, 1vw) * somenumberhere) 过多地增加或减少字体大小,它在某些设备上总是太大或太小。某些字体大小在我的 Android 手机上运行良好,但不适用于我的 iPhone 11 或(使用 Chrome 设备工具栏)iPhone X。
我也尝试过使用FitText,但也会出现同样的问题。它在 Chrome(使用设备工具栏)或我的 Android 手机上确实可以更好地扩展。
我...不知道从这里尝试什么。在一台设备上有效,在另一台设备上无效。我想要的只是根据时间选择器的宽度渲染时间的字体大小(但我不希望它被小东西隐藏Chrome 等浏览器使用的时钟图标或 iOS 上 Safari 等浏览器使用的向下箭头图标。
【问题讨论】:
-
font-size: 100%? -
@MattF。当我这样做时,它会变得非常小,就像上面的屏幕截图一样,我演示了当它变小时会发生什么。
-
这似乎与屏幕大小有关,而不是与其他元素的大小有关。
-
@RichardBarker 我想我刚刚找到了做到这一点的方法。我相信用作乘数的最佳位置是
font-size: calc(var(--vw, 1vw) * 4)。这对 Android、iOS(两部手机)都足够好。为了安全起见,我可以将其更改为3,这是输入字段的高度,但我想我需要先将其滚动,然后才能看到它如何影响其他手机。我现在唯一努力做的就是把时间集中在那个领域。我已经尝试过align-items和align-content。你还有什么想法吗?
标签: javascript html jquery css responsive-design