【发布时间】:2019-09-13 03:28:57
【问题描述】:
我有这样的 HTML 和 CSS 代码:
HTML:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Page Title</title>
<link rel="stylesheet" type="text/css" href="example.css"/>
</head>
<body>
<div id="main">
<span class="alignleft">First event, including a few words of description</span>
<span class="alignright">Date of first event</span>
</div>
</body>
</html>
CSS:
html {
overflow-y: scroll;
max-width: 800px;
margin: auto;
}
body {
background-color: #fff;
color: #000;
font-family: sans-serif;
padding: 0;
margin: 0;
}
#main {
margin: 0;
max-width: 50em;
padding: 1.5em;
}
span.alignleft {
float: left;
width:80%;
text-align:left;
}
span.alignright {
float: left;
width:20%;
text-align:right;
}
在一个大窗口/视口上,这会产生像这样的两列布局的文本(这是我想要的):
在较小的窗口/视口上,例如移动浏览器,这会产生如下文本:
这里没有很多文本,所以我希望字体尽可能地根据视口而不是换行(这在大多数视口上应该是可能的,因为再一次,没有此处文字不多)。
但是,如果我在 CSS 中添加 font-size:2vw 元素,例如
html {
overflow-y: scroll;
max-width: 800px;
margin: auto;
}
body {
background-color: #fff;
color: #000;
font-family: sans-serif;
padding: 0;
margin: 0;
}
#main {
margin: 0;
max-width: 50em;
padding: 1.5em;
}
span.alignleft {
float: left;
width: 80%;
text-align: left;
font-size: 8vw;
}
span.alignright {
float: left;
width: 20%;
text-align: right;
font-size: 2vw;
}
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Page Title</title>
<link rel="stylesheet" type="text/css" href="example.css" />
</head>
<body>
<div id="main">
<span class="alignleft">First event, including a few words of description</span>
<span class="alignright">Date of first event</span>
</div>
</body>
</html>
这会杀死两列布局和其余格式。我该如何解决这个问题?
【问题讨论】:
-
为什么左边栏有
8vw?另外,我建议您以 sn-p 而不是屏幕截图的形式展示您的代码。 -
@billynoah 我不确定你的意思。没有任何代码 显示为屏幕截图。只有输出包含在屏幕截图中。
-
在“如何解决这个问题”字样的正上方有一个屏幕截图 - 而不是向我们显示屏幕截图,只需添加一个 sn-p 以便我们可以看到标记在浏览器中的呈现方式,而不是在图像中。
-
你有没有想过做
media queries并调整布局本身以适应不同的浏览器尺寸?比如改变宽度等等。 -
@billynoah 哦,我明白你的意思了。我没有意识到 sn-ps 可以模拟不同的视口/浏览器,但我会尝试让它工作。
标签: html css viewport font-size