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

JavaScriptで1つの宣言ですべてのアウトラインプロパティを設定する方法

要素にアウトライン(外枠線)を設定するには、CSSの outline プロパティを使用します。このプロパティを使うことで、アウトラインの色・スタイル・幅(オフセット)をまとめて指定できます。

outlineプロパティの基本

JavaScriptからは element.style.outline に対して値を代入することで、個別のプロパティ(outlineColor や outlineStyle など)を分けて指定する必要なく、1つの宣言だけですべてのアウトライン設定を一度に行えます。値は「幅 スタイル 色」の順で半角スペース区切りで記述します。

サンプルコード

以下のコードでは、ボタンをクリックするとJavaScriptによってdiv要素にアウトラインが追加されます。「thick solid #5F5F5F」という1つの宣言で、太さ・スタイル・色を同時に指定している点に注目してください。

<!DOCTYPE html>
<html>
   <head>
      <style>
         #box {
            width: 450px;
            background-color: orange;
            border: 3px solid red;
         }
      </style>
   </head>
   <body>
      <p>下のボタンをクリックしてアウトラインを追加します。</p>
      <div id="box">
         <p>これはdiv要素です。これはdiv要素です。これはdiv要素です。</p>
         <p>これはdiv要素です。これはdiv要素です。これはdiv要素です。</p>
         <p>これはdiv要素です。これはdiv要素です。これはdiv要素です。</p>
      </div>
      <br>
      <button type="button" onclick="display()">アウトラインを設定</button>
      <br>
      <script>
         function display() {
            document.getElementById("box").style.outline = "thick solid #5F5F5F";
         }
      </script>
   </body>
</html>

実行結果のポイント

  • thick: アウトラインの太さを「厚め」に指定しています(thin / medium / thick のほか、px などの数値も使用可能)。
  • solid: アウトラインのスタイルを「実線」に指定しています(dotted や dashed なども指定できます)。
  • #5F5F5F: アウトラインの色を16進数カラーコードで指定しています。

なお、アウトラインはborderと異なりレイアウトに影響を与えず、要素の外側に描画されるため、フォーカス表示やハイライトなどにもよく利用されます。

  1. JavaScriptで要素の周囲のアウトライン(輪郭線)の色を設定する方法

    JavaScriptで要素の周囲に表示されるアウトライン(輪郭線)の色を変更するには、outlineColorプロパティを使用します。このプロパティは、CSSのoutline-colorと同様の役割を持ち、色名やカラーコード(#5F5F5Fなど)を指定することで、要素の外側に描かれる線の色を自由に設定できます。なお、アウトラインはborder(境界線)とは異なり、レイアウトに影響を与えずに要素の外側に表示されるのが特徴です。以下のコード例では、ボタンをクリックするとdiv要素に太い実線のアウトラインが追加され、その色がグレー(#5F5F5F)に設定されます。サンプルコード<!DOCTYP

  2. 1つの宣言でCSSマージンプロパティを設定するにはどうすればよいですか?

    CSSのmarginプロパティは、HTML要素の周囲にある余白(スペース)を定義します。負の値を指定することで、隣接するコンテンツ同士を意図的に重ねて表示することも可能です。 また、marginプロパティはショートハンド(省略形)プロパティとして機能し、上下左右それぞれのマージンを個別に宣言しなくても、たった1つの宣言だけでまとめて設定できます。 marginショートハンドの値の指定ルール 指定する値の数によって、適用される辺が変わります。 値が1つの場合: 上下左右のすべての辺に同じ値が適用されます(例: margin: 20px;) 値が2つの場合: 1つ目が上下、2つ目が左右に適用さ