Text 当文本换行到两行时,块元素将采用全宽

Text 当文本换行到两行时,块元素将采用全宽,text,width,line,block,Text,Width,Line,Block,我基本上只是好奇,因为我一直看到它,而且似乎没有人知道是否有解决办法 通常,当我遇到这个问题时,它是为了一个漂亮的 这就是你的意思吗?我为锚点添加了一个宽度属性 <div style="width: 160px; padding: 10px; background: blue;"> <a href="#" style="background: red; display: block; width: 100px;">Test with a longwrappingwo

我基本上只是好奇,因为我一直看到它,而且似乎没有人知道是否有解决办法

通常,当我遇到这个问题时,它是为了一个漂亮的


这就是你的意思吗?我为锚点添加了一个宽度属性

<div style="width: 160px; padding: 10px; background: blue;">
  <a href="#" style="background: red; display: block; width: 100px;">Test with a longwrappingword</a>
</div>

这就是你的意思吗


var$block=$(“#block”);
var orig=$block.html();
var指数=原始lastIndexOf(“”)| |-1;
var longword=原始子字符串(索引+1,原始长度);
$block.html(orig+longword);
var\u width=$block[0]。滚动宽度/2;
$block.html(源代码);
$block.width(所需宽度);
对你有用吗

<div style="width: 160px; padding: 10px; background: blue;">
  <a href="#" style="background: red; display: table; width: 1%">Test with a longwrappingword</a>
</div>
<span style="padding-left:130px">^ Where the element COULD end if it wanted to</span>

^元素可以结束的地方,如果它想结束的话

这确实可行,但我希望它是动态的,这样它可以处理任意长度的文本。这远不是理想的,必须有不那么笨拙的方法来实现,但如果没有javascript,我不认为它仍然不是完美的,它会导致文本在不需要任何奇怪操作的情况下断开两行。例如,如果周围的div更宽或没有定义宽度。
<div style="width: 160px; padding: 10px; background: blue;">
  <a id="block" href="#" style="background: red; display: block;">Test with a longwrappingword</a>
</div>

<script>
var $block = $('#block');
var orig = $block.html();
var index = orig.lastIndexOf(' ') || -1;
var longword = orig.substring(index + 1, orig.length);

$block.html(orig + longword);
var wanted_width = $block[0].scrollWidth / 2;
$block.html(orig);
$block.width(wanted_width);
</script>
<div style="width: 160px; padding: 10px; background: blue;">
  <a href="#" style="background: red; display: table; width: 1%">Test with a longwrappingword</a>
</div>
<span style="padding-left:130px">^ Where the element COULD end if it wanted to</span>