Jquery 仅占用两行的宽度
我可能有短文本或长文本,但无论如何,我想定义我的div的宽度,以便文本将在两行中 短文本 +-------------------------+Jquery 仅占用两行的宽度,jquery,css,Jquery,Css,我可能有短文本或长文本,但无论如何,我想定义我的div的宽度,以便文本将在两行中 短文本 +-------------------------+ |此处为短文本| |此处为短文本| +-------------------------+ 长文本 +--------------------------------------------------------------------+ |长文本在此处显示长文本在此处显示长文本在此处显示| |长文本在此处显示长文本在此处显示长文本在此处显示| +-
|此处为短文本|
|此处为短文本|
+-------------------------+ 长文本 +--------------------------------------------------------------------+
|长文本在此处显示长文本在此处显示长文本在此处显示|
|长文本在此处显示长文本在此处显示长文本在此处显示|
+--------------------------------------------------------------------+ 所以无论文本是短是长,它的宽度都应该是两行。我怎样才能做到这一点 如果css无法做到这一点,那么jquery还能做到吗? CSS:
.two-lines {
background-color: yellow;
display: inline-block;
white-space: nowrap;
}
.two-lines.wrapped {
white-space: normal;
}
$(".two-lines").each(function () {
var $width = $(this).width();
$(this).width($width / 2)
.addClass("wrapped");
});
JS:
.two-lines {
background-color: yellow;
display: inline-block;
white-space: nowrap;
}
.two-lines.wrapped {
white-space: normal;
}
$(".two-lines").each(function () {
var $width = $(this).width();
$(this).width($width / 2)
.addClass("wrapped");
});
编辑:这是一种更准确的方法
不是用一个标签。但是,如果源代码修改对您来说是可行的,您可以选择以下选项:
<div>
<p>long text goes here long text goes here long text goes #</p>
<p>long text goes here long text goes here long text goes</p>
</div>
<style>
div > p {
white-space:nowrap;
}
</style>
长文本到这里长文本到这里长文本到这里#
长文本到这里长文本到这里长文本到这里
div>p{
空白:nowrap;
}
两条线总是一条线。现在,您不必为div设置宽度,因此它将扩展以容纳文本。仅使用CSS绝对不可能。感谢n+1回答“使用jquery没有什么是不可能的”