Javascript 如何设置HTML元素的样式以避免挂起文本?

Javascript 如何设置HTML元素的样式以避免挂起文本?,javascript,html,css,Javascript,Html,Css,我正在创建一个页面,其中有一个文本框,显示来自数据库的文本字符串,其长度各不相同。因此,有些字符串恰好足够长,可以运行到两行上,但第二行很短,看起来不太好: 在这里,蓝色框显示包含内容的div。它有一个固定的宽度(容器的80%),并且文本对齐:居中 所以我的问题是:如何让文本在线宽更接近的情况下流入行中?我愿意做一些计算并动态调整宽度或字体大小,但我不确定如何可靠地做到这一点。您需要JavaScript来做到这一点。如果您使用的是动态文本,仅CSS无法解决此问题 一旦检测到长方体的高度超出一行

我正在创建一个页面,其中有一个文本框,显示来自数据库的文本字符串,其长度各不相同。因此,有些字符串恰好足够长,可以运行到两行上,但第二行很短,看起来不太好:

在这里,蓝色框显示包含内容的
div
。它有一个固定的宽度(容器的80%),并且
文本对齐:居中


所以我的问题是:如何让文本在线宽更接近的情况下流入行中?我愿意做一些计算并动态调整宽度或字体大小,但我不确定如何可靠地做到这一点。

您需要JavaScript来做到这一点。如果您使用的是动态文本,仅CSS无法解决此问题

一旦检测到长方体的高度超出一行的限制,您可以缩小字体、展开长方体或计算中点以添加一个打断,并有两条平衡线

下面是各种jQuery插件,它们可以为您实现这一点。如果你看的话,有很多


就我个人而言,我不喜欢用javascript来“简单的事情”

您可以使用以下属性

overflow 
white-space

如果您根本不需要对文本进行换行,可以使用
空白:nowrap
style@PatrickEvans这会导致溢出。@Joshua你所说的“线宽彼此更近”是什么意思?@Joshua-蓝色div需要固定为80%吗?或者,可以增加它的宽度来获得“瀑布”吗单词和其他单词在同一行吗?@TilwinJoy:我的意思是不应该有一行比另一行短得多。