現役エンジニアが解説!HTML、CSS、JavaScriptを使ったtextareaフォーカスデザイン

2024-06-09

HTMLとCSSでtextareaのフォーカス時のボーダー色を変更する方法

HTML

まず、HTMLでtextarea要素を作成します。

<textarea id="my-textarea" rows="5" cols="30"></textarea>

この例では、id="my-textarea"というIDを持つtextarea要素を作成しています。

CSS

次に、CSSでtextareaのフォーカス時のボーダー色を変更します。

#my-textarea:focus {
  border: 2px solid blue;
}

この例では、#my-textareaというIDを持つtextarea要素にフォーカスが当たったときに、ボーダーを2ピクセルの青い線に変更します。

内訳

  • #my-textarea: これは、CSSでスタイルを適用するtextarea要素を選択するセレクターです。
  • :focus: これは、要素にフォーカスが当たっているときに適用される疑似クラスです。
  • border: これは、要素のボーダーを設定するプロパティです。
  • 2px solid blue: これは、ボーダーの太さ、スタイル、色を定義する値です。

オプション

上記の基本的な例に加えて、ボーダーの太さ、スタイル、色を自由に設定することができます。

  • 太さ: border-widthプロパティを使用してボーダーの太さを設定できます。
  • スタイル: border-styleプロパティを使用してボーダーのスタイルを設定できます。利用可能なスタイルには、soliddasheddottedなどがあります。
  • : border-colorプロパティを使用してボーダーの色を設定できます。色の指定には、16色名のいずれか、RGB値、またはHEX値を使用できます。

#my-textarea:focus {
  border: 4px dashed green;
}

デモ

以下のデモで、実際にtextareaのフォーカス時のボーダー色を変更する方法を確認できます。

<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>Textarea Focus Border</title>
  <style>
    #my-textarea {
      width: 300px;
      height: 100px;
    }

    #my-textarea:focus {
      border: 2px solid blue;
    }
  </style>
</head>
<body>
  <textarea id="my-textarea" rows="5" cols="30"></textarea>
</body>
</html>

このデモでは、textareaにフォーカスを合わせると、ボーダー色が青色に変わります。

HTMLとCSSを使用して、textareaのフォーカス時のボーダー色を簡単に変更することができます。上記の説明と例を参考に、自分のニーズに合わせてボーダーをカスタマイズしてみてください。




<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>Textarea Focus Border</title>
  <link rel="stylesheet" href="style.css">
</head>
<body>
  <textarea id="my-textarea" rows="5" cols="30"></textarea>
</body>
</html>
#my-textarea {
  width: 300px;
  height: 100px;
}

#my-textarea:focus {
  border: 2px solid blue;
}

説明

  • このコードは、index.htmlというHTMLファイルとstyle.cssというCSSファイルで構成されています。
  • index.htmlファイルは、textarea要素を含むシンプルなHTMLドキュメントです。
  • style.cssファイルは、textareaのフォーカス時のボーダー色を変更するCSSルールを定義しています。
  • CSSルールでは、#my-textareaというIDを持つtextarea要素を選択し、:focus疑似クラスを使用してフォーカス状態を指定しています。
  • フォーカス状態では、borderプロパティを使用してボーダーの太さ、スタイル、色を設定しています。

実行方法

  1. 上記のコードをindex.htmlstyle.cssというファイルに保存します。
  2. Webブラウザでindex.htmlファイルを開きます。

カスタマイズ

このコードは、ニーズに合わせてカスタマイズすることができます。

  • 要素のセレクター: #my-textareaというセレクターを、クラス名や属性セレクターなど、他のセレクターに変更できます。
#my-textarea:focus {
  border: 4px dashed green;
}

このコードをstyle.cssファイルに追加して、index.htmlファイルを再読み込みすると、textareaのフォーカス時のボーダーが緑色の破線になります。

このサンプルコードを参考に、様々なデザインのボーダーを作成してみてください。




textareaのフォーカス時のボーダー色を変更するその他の方法

JavaScriptを使用して、textareaにフォーカスが当たったときにボーダー色を変更することができます。

const textarea = document.getElementById('my-textarea');

textarea.addEventListener('focus', function() {
  textarea.style.border = '2px solid blue';
});

textarea.addEventListener('blur', function() {
  textarea.style.border = '';
});

ライブラリ

BootstrapやFoundationなどのCSSフレームワークを使用している場合は、これらのフレームワークが提供するユーティリティクラスを使用して、textareaのフォーカス時のボーダー色を簡単に変更することができます。

Bootstrapでは、.form-controlクラスを使用してtextareaをスタイル設定し、.form-control:focusクラスを使用してフォーカス時のスタイルを定義することができます。

<textarea class="form-control" id="my-textarea" rows="5" cols="30"></textarea>
<textarea class="form-group" id="my-textarea" rows="5" cols="30"></textarea>

注意

これらの方法は、HTMLとCSSのみを使用する方法よりも複雑になる場合があります。シンプルなデザインの場合は、HTMLとCSSのみを使用する方法がおすすめです。

textareaのフォーカス時のボーダー色を変更するには、HTMLとCSS、JavaScript、ライブラリなど、様々な方法があります。それぞれの方法にはメリットとデメリットがあるため、自分のニーズに合わせて最適な方法を選択してください。


html css


CSSのみで上付き文字を表示する方法【positionプロパティを使った簡単実装】

そこで、CSSのみを使って上付き文字を表示する方法をご紹介します。vertical-alignプロパティを使って、文字の垂直方向の位置を調整することで、上付き文字を表示することができます。この例では、.superscriptクラスが付与された文字が上付き文字になります。...


【2つの方法】JavaScriptとHTMLでクリックされたボタンのIDを取得する方法(サンプルコード付き)

このページでは、JavaScriptとHTMLを用いて、クリックされたボタンのIDを取得する方法について解説します。方法以下の2つの方法を紹介します。HTMLのonclick属性JavaScriptのaddEventListener()メソッド...


【初心者向け】CSSレイアウトの基本を押さえよう!float・display・positionの解説

ウェブデザインにおいて、要素の配置やレイアウトは重要な要素です。その中でも、「float:left;」、「display:inline;」、「display:inline-block;」、「display:table-cell;」といったCSSプロパティは、要素を柔軟に配置するために広く使用されています。それぞれのプロパティは異なる特性を持ち、適切な使い分けが求められます。...


CSSネイティブ変数とメディアクエリ:詳細ガイド

CSSネイティブ変数は、CSSコードをより簡潔で柔軟に記述するために導入された機能です。しかし、メディアクエリ内ではネイティブ変数が正しく動作しない場合があることが知られています。問題点メディアクエリ内でネイティブ変数を用いると、以下の問題が発生する可能性があります。...


Next.jsでリダイレクトをマスターしてユーザー体験を向上させる

Next. jsでは、さまざまな方法で別のページへリダイレクトすることができます。Next. jsプロジェクトのルートディレクトリにある next. config. js ファイルを使用して、リダイレクトを設定することができます。この例では、/old-page にアクセスすると、301ステータスコードと共に /new-page へリダイレクトされます。...