HTMLのインライン要素とブロックレベル要素とは何か、またそれらの違いは何ですか

HTMLのインライン要素とブロックレベル要素とは何か、またそれらの違いは何ですか

以前の就職面接で面接官が尋ねた質問を覚えています。「インライン要素とは何ですか。ブロックレベル要素とどう違うのですか。」これは非常に基本的な面接の質問ですが、多くの初心者は通常、タグのセマンティクスのみに焦点を当て、タグのインラインおよびブロックレベルの特徴を無視します。そのため、上記の質問に答えられないか、不完全な答えになる可能性があります。

HTML の一般的なインライン要素は次のとおりです。

<span>、<a>、<img>、<input>、<textarea>、<select>、<label>

<br>、<b>、<strong>、<sup>、<sub>、<i>、<em>、<del>、<u> などのテキスト要素もあります。

<span> と <img> だけに答えるのは無理があります。

HTML の一般的なブロックレベル要素は次のとおりです。

<div>、<table>、<form>、<p>、<ul>、

<h1>......<h6>、<hr>、<pre>、<address>、<center>、<marquee>、<blockquote> など。

<div> だけに答えると無理があります。

では、それらの違いは何でしょうか?

ブロックレベル要素

1. 常に新しい行から開始します。つまり、各ブロックレベル要素は 1 行を占め、デフォルトでは垂直方向下向きに配置されます。

2. 高さ、幅、余白、パディングはすべて制御可能で、設定はマージン効果とともに効果的です。

3. 幅が設定されていない場合、デフォルトは 100% です。

4. ブロックレベル要素には、ブロックレベル要素とインライン要素を含めることができます。

インライン要素

1. 他の要素と一列に並んでいる、つまり、インライン要素と他のインライン要素が水平方向に並んでいる。

2. 高さと幅は制御できず、設定は無効です。コンテンツによって決定されます。

マージンの設定は左右に有効で、マージン効果があります。

上部と下部のマージンを設定すると、スペースは拡張されますが、マージン効果は生成されません (つまり、ボックス モデルの margin-top/bottom には値がありますが、ページにマージン効果はありません)。

左と右にパディングを設定すると効果的ですが、上と下にパディングを設定するとスペースは広がりますが、マージン効果は得られません (上記と同じ)。

パディング効果は以下のようになります。

<!DOCTYPE html>
<html>
   <ヘッド>
      <メタ文字セット="UTF-8">
   </head>
	<スタイル>
		スパン{
			border:1px 赤一色;
			パディング:10px;
		}
		div{
			border:1px 青一色;
		}
	</スタイル>
   <本文>
	   <div>ブロックレベル要素</div>
	   <span>インライン要素</span>
	   <span>インライン要素</span>
	   <div>ブロックレベル要素</div>
   </本文>
</html> 

3. タグセマンティクスの概念によれば、インライン要素にはインライン要素のみが含まれ、ブロックレベル要素は含まれません。

変換

もちろん、ブロックレベル要素とインライン要素間の特性は相互に変換できます。 HTML では、要素をインライン要素、ブロック要素、インライン ブロック要素の 3 つのタイプに分類できます。

display プロパティを使用して、これら 3 つを次のいずれかに変換します。

(1)display:inline;インライン要素に変換される。

(2)display:block;をブロック要素に変換する。

(3)display: inline-block; インラインブロック要素に変換します。

インライン ブロック要素は、インライン要素とブロック要素の特性を兼ね備えています。

(1)自動的な行の折り返しは行われず、他のインライン要素はすべて水平方向に配置される。

(2)高さ、幅、余白、パディングはすべて制御可能であり、設定はマージン効果とともに効果的である。

(3)デフォルトの配置は左から右です。

以上で、HTML インライン要素とブロックレベル要素とは何か、またその違いについての説明は終了です。HTML インライン要素とブロックレベル要素についてさらに詳しく知りたい方は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続きご覧ください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  Jenkins の Docker のデプロイとインストール手順

>>:  CSS3 で作成した本のページめくり効果

推薦する

Linux システムの仮想ホストで Swoole Loader 拡張機能を有効にする方法

特記事項: Swoole 拡張機能のみがインストールされ、サーバーはホストにインストールされません。...

MySQLは効率的なインデックス例分析を確立する

この記事では、例を使用して、MySQL で効率的なインデックスを作成する方法について説明します。ご参...

HTTPプロトコルにおけるステータスコードの意味

暫定的な応答を示し、要求者に操作の続行を要求するステータス コード。コードの説明100 (続行) リ...

ウェブサイトを構築するときは、UTF-8 または GB2312 エンコードを使用する必要がありますか?

外国のウェブサイトを開くと文字化けした文字が表示されることが多く、また、英語以外の外国のウェブサイト...

Vueはローカルストレージの追加、削除、変更機能を実装します

この記事では、ローカルストレージの追加、削除、変更を実装するためのVueの具体的なコードを例として紹...

理論の普及——ユーザーエクスペリエンス

1. 概念分析 1: UE ユーザー エクスペリエンス <br />英語ではユーザー エ...

Linux サーバーのクイックアンインストールとノード環境のインストール (簡単に始められます)

1.まずnpmをアンインストールする sudo npm アンインストール npm -g 2. ノー...

node.js が大規模プロジェクトに適さない理由

目次序文1. アプリケーションコンポーネント2. アプリケーションの種類3. アプリケーションサービ...

スクロールバーがスペースを占有することで発生するバグを修正しました

背景このバグは滾動條占據空間ことで発生していました。いくつかの情報を確認して、ようやく解決しました。...

Alibaba Cloud OSS によってアップロードされた Nginx プロキシ転送実装コード

序文ミニプログラムのアップロードには https が必要なので、サーバーの https は lets...

JavaScript スネーク実装コード

この記事の例では、参考までに貪欲なスネークを実装するためのJavaScriptの具体的なコードを共有...

CSS3 のメディアクエリと rem レイアウトを組み合わせてモバイル画面に適応

CSS3 構文: (750 ピクセルのデザインの場合、1rem = 100 ピクセル) @media...

JS+Canvas でダイナミックな時計効果を実現

参考までに、Canvas をベースにしたダイナミッククロックのデモを用意しました。具体的な内容は次の...

URL 内の特殊記号の意味を知っていますか?

1.# # は Web ページ内の場所を表します。右側の文字はその位置の識別子です。たとえば、ht...

HiveメタデータをMySQLに設定するプロセス全体

Hiveのインストールディレクトリで、confディレクトリに入り、hive-site.xmlファイル...