html - 有没有办法只使用 css 或 html 使文本填充按钮大小?

标签 html css

我正在尝试制作带有文本的响应按钮,但我无法仅使用 css 和 html 使文本保持按钮大小

body {
  margin: 0;
}

.button {
  float: left;
  width: 20vw;
  height: 20vh;
  text-align: center;
  font-size: 6vmin;
  font-weight: bold;
}
<!DOCTYPE html>
<html>

<head>
  <link rel='stylesheet' type='text/css' href='chatstyle.css'>
</head>

<body>
  <button class="button">justlongtext</button>
</body>

使用此代码然后尝试将窗口大小调整为 190px 310px 文字会从按钮中消失

最佳答案

如果设置按钮的宽度高度,那么当文本大于按钮时,它会溢出。您可以通过仅设置一个维度(仅 width 或仅 height)来修复它。您可以添加一些填充来代替第二个维度,以使按钮看起来不错:

.only-height {
    height: 50px;
}

.only-width {
    width: 100px;
}
<button class="only-height">This is very long text, but it won't overflow because only the height is set.</button>
<br>
<button class="only-width">This is very long text, but it won't overflow because only the width is set.</button>

如果您想根据按钮的大小调整文本大小,我建议您使用 javascript。但是你也可以不用 javascript 来做。您也可以在字体大小中使用vwvh,但您必须根据文本长度手动设置。 Here is an example .它工作得很好,但如果文本太长,它会溢出,所以你必须将 calc(0.9vw + 0.9vh) 更改为较小的值,如 calc(0.5vw + 0.5vh)Second example .

关于html - 有没有办法只使用 css 或 html 使文本填充按钮大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53897383/

相关文章:

html - CSS 背景仅在 Firefox 中向一个方向重复一轮

css - padding-top 与父级宽度的百分比有何关系?

php - 根据开始时间格式化事件

javascript - 使用 jquery 选择 'a' 标记中的 html 但获取 html 不是函数

css - 防止可变 div 大小移动居中图像

javascript - 相对于 SCREEN 和 COL div 定位一个 div

html - 滚动后 ui-grid 单元格模板中的多选下拉列表无法正确呈现

php - 在提交 POST 表单后使用 anchor

html - 如何对齐div容器和表格

html - 分页符在 div 中不起作用。如何添加此标签?