javascript - 文本在固定高度 div 中居中,文本不间断

标签 javascript html css

div 始终具有固定的高度。其中的文本应始终居中。一旦文本变得比 div 大,字体大小应该变小,以便文本在 div 中居中。 问题是,我无法在标题中添加不同的类。 有谁知道我该如何解决这个问题?我需要javascript吗? 任何帮助将不胜感激。谢谢。

.fix-height{
  height: 60px;
  width: 270px;
  border: 1px solid #000000;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}

h2{
font-size: 20px;
}
<div class="fix-height">
<h2>Lorem ipsum dolor sit Lorem ipsum dolor sit</h2>
</div>
<br><br><br><br>
<div class="fix-height">
<h2>Lorem ipsum dolor sit</h2>
</div>

<br><br><br><br>
<div class="fix-height">
<h2>Lorem ipsum dolor sit Lorem ipsum dolor sit Lorem ipsum dolor sit</h2>
</div>

最佳答案

你可以用简单的 JQuery 来完成

代码如下:

$(function() {
  $('#fitin div').css('font-size', '1em');

  while ($('#fitin div').height() > $('#fitin').height()) {
    $('#fitin div').css('font-size', (parseInt($('#fitin div').css('font-size')) - 1) + "px");
  }

});
#fitin {
  width: 300px;
  height: 200px;
  line-height: 200px;
  border: 1px solid black;
  overflow: hidden;
  font-size: 1em;
  text-align: center;
}

#fitin div {
  display: inline-block;
  vertical-align: middle;
  line-height: normal;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="fitin">
  <div>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata
    sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.
    Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</div>
</div>

编辑 居中对齐文本

关于javascript - 文本在固定高度 div 中居中,文本不间断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42621961/

相关文章:

javascript - 如何正确获取 promise 的返回值?

javascript - 正则表达式以货币格式替换十进制数和所有句点

html - 您可以使用 id 和类名 css 选择器在另一个 namespace 中设置 XHTML 元素的样式吗?

javascript - 单击菜单外部关闭菜单

php - 在 img 内悬停时显示标题标签

javascript - JS - 如何从不同的文件 Hook 成功和错误回调

javascript - 如何根据同一对象内给定的键值过滤对象

css - CSS 中的不透明度淡化问题

html - 每行两个输入,在选择标签空格之后

javascript - 从下到上动画图像