入力禁止のテキストエリアを作る方法
入力禁止のテキストエリアを作る方法を紹介します。このサンプルでは、HTMLの属性だけを利用して編集できないテキストエリアを表示します。初期状態で文章を表示したまま、ユーザーによる入力や編集を禁止したい場合に利用できます。
利用規約や注意事項、システムから表示するメッセージ、編集不可のコメント欄など、内容を表示するだけで変更されたくない場面に適しています。HTMLとCSSだけで実装できるため、JavaScriptを使わずに簡単に導入できます。
デザインは自由に変更できるので、背景色や文字色、枠線、角丸などをサイトのデザインに合わせて調整できます。フォームの一部として表示したい場合や、編集不可であることを視覚的に伝えたい場合にも活用しやすいサンプルです。
免責事項 本記事を利用したことによる損害について、当サイトでは一切の責任を負いません。
デモ
入力禁止のテキストエリアです。内容は表示されますが編集はできません。
お問い合わせ内容
入力禁止のテキストエリアです。
コードをコピーして使おう!
<!DOCTYPE html>
<html lang="ja">
<head>
<!-- 文字コード -->
<meta charset="UTF-8">
<!-- スマートフォン対応 -->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- ページタイトル -->
<title>入力禁止のテキストエリア</title>
<!-- CSSファイル -->
<link rel="stylesheet" href="style.css">
</head>
<body>
<!-- 入力フォーム全体 -->
<div class="disabled-textarea_wrap">
<!-- タイトル -->
<div class="disabled-textarea_title">
お問い合わせ内容
</div>
<!-- 説明文 -->
<p class="disabled-textarea_text">
入力禁止のテキストエリアです。
</p>
<!-- 入力項目 -->
<div class="disabled-textarea_group">
<!-- ラベル -->
<label
class="disabled-textarea_label"
for="message">
内容
</label>
<!-- disabled属性で入力と編集を禁止するテキストエリア -->
<textarea
id="message"
name="message"
class="disabled-textarea_input"
disabled>こちらの内容は編集できません。
このテキストエリアは入力禁止になっているため、クリックしても入力や編集は行えません。</textarea>
</div>
</div>
</body>
</html>
サンプル一式を取得する場合 HTML・CSSなどすべてのファイルが必要な場合は、「サンプル一式をダウンロード」をクリックしてください。
ファイル構成と設置方法
このサンプルはHTMLとCSSの2ファイルで構成されています。HTMLでは入力禁止のテキストエリアを表示し、ユーザーが内容を編集できないフォームを作成します。CSSではフォーム全体のデザインや入力禁止状態の見た目を設定しており、背景色や文字色を変更することで編集不可であることを分かりやすく表示します。
sample/
├── index.html
└── style.css
各ファイルの役割
index.htmlはフォーム全体を表示するファイルです。タイトル、説明文、ラベル、表示する文章を変更できます。また、disabled属性を付けることでテキストエリアを入力禁止にしています。
style.cssはフォーム全体とテキストエリアのデザインを設定するファイルです。背景色、文字色、枠線、角丸、余白、入力禁止時の見た目などを変更できます。
設置方法・使い方
sampleフォルダへindex.htmlとstyle.cssを配置します。2つのファイルを同じ階層へ保存したあと、sample/index.htmlをブラウザで開いてください。入力禁止のテキストエリアが表示され、内容は閲覧できますが入力や編集はできません。
カスタマイズできる内容
index.htmlではタイトル、説明文、ラベル、テキストエリアへ表示する文章を変更できます。disabled属性を削除すると通常のテキストエリアとして入力できるようになります。
style.cssではフォーム全体の横幅、余白、背景色、文字色、枠線、角丸、テキストエリアの高さ、入力禁止時の背景色や文字色などを用途に合わせて変更できます。
数値調整
style.css
max-width:700px;
フォーム全体の最大横幅です。値を大きくすると横に広がり、小さくするとコンパクトになります。
margin:40px auto;
フォーム全体の上下余白です。40pxを大きくすると上下の間隔が広がり、小さくすると狭くなります。
padding:32px;
フォーム全体の内側余白です。値を大きくすると内容との間隔が広がり、小さくすると詰まった表示になります。
border-radius:18px;
フォーム全体の角丸です。値を大きくすると丸みが強くなり、0にすると四角になります。
font-size:22px;
タイトルの文字サイズです。値を大きくすると文字が大きくなり、小さくすると控えめになります。
gap:10px;
ラベルとテキストエリアの間隔です。値を大きくすると広がり、小さくすると近付きます。
min-height:180px;
テキストエリアの初期高さです。値を大きくすると高く表示され、小さくすると低くなります。
padding:14px 16px;
テキストエリアの内側余白です。上下14px・左右16pxを変更すると文字と枠線の間隔が変わります。
border:2px solid #d1d5db;
テキストエリアの枠線です。2pxを大きくすると太くなり、小さくすると細くなります。
border-radius:10px;
テキストエリアの角丸です。値を大きくすると丸みが強くなり、0にすると四角になります。
line-height:1.7;
テキストエリア内の文章の行間です。値を大きくすると読みやすくなり、小さくすると詰まった表示になります。
レスポンシブ対応
このサンプルはレスポンシブ対応です。style.cssのwidth:100%とmax-width:700pxにより画面幅に合わせてフォーム全体が縮小されます。また、640px以下ではpaddingやテキストエリアの高さを調整しているため、スマートフォン・タブレット・PCでも見やすく表示できます。
コメント