首頁 > web前端 > css教學 > 如何使用 JavaScript 動態調整 DIV 的大小以換行文字內容?

如何使用 JavaScript 動態調整 DIV 的大小以換行文字內容?

Patricia Arquette
發布: 2024-10-29 20:36:29
原創
1064 人瀏覽過

How to Dynamically Size a DIV to Wrapped Text Content with JavaScript?

使用 JavaScript 實作換行文字的動態 DIV 大小調整

僅使用 CSS 將 DIV 縮小到換行文字內容的範圍是一個挑戰。但是,可以使用 JavaScript 來克服此限制並實現所需的行為。

在提供的程式碼範例中,最大寬度為 130 像素的 DIV 元素(「收縮」)由於文字換行而出現不需要的邊距。為了解決這個問題,利用 JavaScript 來計算包裹內容的實際寬度,並據此調整 DIV 大小。

<code class="js">const range = document.createRange();
const text = p.childNodes[0];
range.setStartBefore(text);
range.setEndAfter(text);
const clientRect = range.getBoundingClientRect();
p.style.width = `${clientRect.width}px`;</code>
登入後複製

此程式碼片段利用 createRange() 函數來定義包含包裹內容的範圍文字。然後, getBoundingClientRect() 計算定義範圍的邊界矩形,有效地決定文字內容的寬度。最後,動態設定 DIV 的寬度以符合此寬度,從而緊密貼合環繞的文字。

以上是如何使用 JavaScript 動態調整 DIV 的大小以換行文字內容?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板