JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptでテキストの1行目にインデントを設定する方法

JavaScriptでテキストの最初の行にインデント(字下げ)を設定するには、textIndent プロパティを使用します。このプロパティはCSSの text-indent に対応しており、要素のスタイルオブジェクト経由で動的に値を変更できます。

textIndentプロパティとは

textIndentプロパティは、ブロックレベル要素内のテキストの最初の行をどれだけ字下げするかを指定します。値は px(ピクセル)や em% などの単位で指定可能です。

サンプルコード

以下のコードでは、ボタンをクリックするとJavaScriptによってテキストの1行目のインデントが50pxに設定されます。実際にブラウザで実行して動作を確認してみてください。

<!DOCTYPE html>
<html>
   <body>
      <div id = "myText">
         This is demo text. This is demo text. This is demo text. This is demo text. This is demo text. This is demo text.
      </div>
      <br>

      <button onclick = "display()">Set Text Indent</button>
      <script>
         function display() {
            document.getElementById("myText").style.textIndent = "50px";
         }
      </script>
   </body>
</html>

コードの解説

ボタンがクリックされると display() 関数が呼び出されます。この関数内で document.getElementById("myText") により対象のdiv要素を取得し、その style.textIndent"50px" を代入することで、段落の最初の行だけが50ピクセル分右にずれて表示されます。

補足ポイント

・負の値を指定すると、逆に左側へはみ出すようなインデント(ぶら下がりインデント)を作成できます。
em 単位を使えば、フォントサイズに応じた相対的なインデント設定が可能です。
・この方法は既存のHTMLを書き換えることなく、ユーザーの操作に応じて動的にスタイルを変更したい場合に便利です。

  1. JavaScriptでテキストの行間を設定する方法

    テキストの行間(行と行の距離)を設定するには、lineHeightプロパティを使用します。このプロパティは、要素内の各行の高さを制御し、値を大きくするほど行間が広がります。JavaScriptから操作する場合は、document.getElementById()などで対象の要素を取得し、style.lineHeightに値を代入します。値には数値(フォントサイズに対する倍率)のほか、「px」や「%」などの単位も指定できます。以下のサンプルコードを実行して、JavaScriptでテキストの行間を設定する方法を確認してみましょう。サンプルコード<!DOCTYPE html> <h

  2. JavaScriptでテキストの文字間隔(レタースペーシング)を設定する方法

    文字間隔の設定には「letterSpacing」プロパティを使うJavaScriptでテキストの文字と文字の間隔を調整するには、styleオブジェクトのletterSpacingプロパティを使用します。このプロパティはCSSのletter-spacingに対応しており、「px」や「em」、「pt」などの長さの単位で文字間のスペースを自由に指定できます。値には正の数値を指定すれば文字間が広くなり、負の数値を指定すれば狭くなります。また、「normal」を設定すればデフォルトの間隔に戻すことも可能です。サンプルコード以下のコードでは、ボタンをクリックするとdisplay()関数が呼び出され、idが