For reference when creating a website
MK-BLOG
ホーム > MK-BLOG:ホームページ制作の参考に > Web制作技術(HTML/CSS/JS) > HTML5.1要素(タグ)の配置ルール

HTML5.1要素(タグ)の配置ルール

HTML5.1要素(タグ)の配置ルール

HTML5.1要素の配置ルール

前回は、HTML5.1全要素・属性一覧(K~Wまで)を一覧にて記載いたしました。

そこで、要素と属性を記載していて思ったわけです、ルールを記載していない。このルール、ご説明するまでもありませんが重要で、例えば、head要素はhtml要素の1つ目の子要素とかという決まり(ルール)がございます。これ仮に間違って2番目に記載したとしても、実はブラウザ上でエラーとかは表示されない訳です。

この事柄がHTMLでソースコードを記載する際、見た目は変わらないけれど構文チェックをおこなうとエラーになる要素です。 なので、またまた一覧にて記載いたしますので、マークアップの参考になれば幸いです。

という事で、それでは今回はッ、

上記について記載していこうと思います...。

HTML5.1全要素・属性一覧(K~Wまで)

それでは、少しご説明をいたします。要素名(htmlタグ)をa ~ wの順に記載していきます。配置できる場所は、コンテンツ内であったりインライン要素であったりの説明になります。
内容として入れられる要素につきましては、文章内だったり空要素だったりの記載になります。

コーディングになれている方であれば、特に問題ないことが多いことと思いますが、私でもまれに複雑なマークアップの際は迷うこともありますので、その際にご参考になれば幸いです。

要素名配置できる場所内容として入れられる要素
a文章内コンテンツが配置可能な場所親要素と同じ。ただし、対話型コンテンツとa要素の内部に含むことができない
abbr文章内コンテンツが配置可能な場所文章内コンテンツ
addressフローコンテンツが配置可能な場所フローコンテンツ。ただし、見出しコンテンツ・セクショニングコンテンツ・header要素・footer要素・address要素は内部に含むことができない
areamap要素またはtemplate要素の内部で、文章内コンテンツが配置可能な場所なし(空要素)
articleフローコンテンツが配置可能な場所フローコンテンツ
asideフローコンテンツが配置可能な場所フローコンテンツ。ただし、main要素を内部に含むことはできない
audio組み込みコンテンツが配置可能な場所src属性が指定されている場合は先頭にtrack要素をゼロ個以上、その後は親要素と同じ。ただし、video要素とaudio要素は内部に含むことができない。src属性が指定されていない場合は、先頭にsource要素をゼロ個以上、次にtrack要素をゼロ個以上、その後は親要素と同じ。video要素とaudio要素は内部に含むことができない。
b文章内コンテンツが配置可能な場所文章内コンテンツ
basehead要素内:複数は配置できないなし(空要素)
bdi文章内コンテンツが配置可能な場所文章内コンテンツ
bdo文章内コンテンツが配置可能な場所文章内コンテンツ
blockquoteフローコンテンツが配置可能な場所フローコンテンツ
bodyhtml要素の2つ目の子要素として配置フローコンテンツ
br文章内コンテンツが配置可能な場所なし(空要素)
button文章内コンテンツが配置可能な場所文章内コンテンツ。table要素を内部に含むことはできない
canvas組み込みコンテンツが配置可能な場所親要素と同じ
captiontable要素の最初の子要素として配置フローコンテンツ。table要素の内部に含むことはできない
cite文章内コンテンツが配置可能な場所文章内コンテンツ
code文章内コンテンツが配置可能な場所文章内コンテンツ
colspan属性のないcolgroup要素の子要素として配置なし(空要素)
colgrouptable要素の子要素として、caption要素よりも後ろで、tr要素・thead要素・tbody要素・tfoot要素よりも前の位置に配置span属性が指定されている場合:なし span属性が指定されていない場合:col要素・template要素をゼロ個以上
data文章内コンテンツが配置可能な場所文章内コンテンツ
datalist文章内コンテンツが配置可能な場所文章内コンテンツ、またはoption要素・script要素・template要素をゼロ個以上
dddl要素内で、dt要素またはdd要素の後ろに配置フローコンテンツ
del文章内コンテンツが配置可能な場所親要素と同じ
detailsフローコンテンツが配置可能な場所summary要素を1つ配置し、その後はフローコンテンツ
dfn文章内コンテンツが配置可能な場所文章内コンテンツ。別のdfn要素を内部に含むことはできない
divフローコンテンツが配置可能な場所フローコンテンツ
dlフローコンテンツが配置可能な場所1つ以上のdt要素に続く1つ以上のdd要素のグループをゼロ個以上
dtフローコンテンツが配置可能な場所フローコンテンツ。セクショニングコンテンツ・見出しコンテンツ・header要素を内部に含むことはできない
em文章内コンテンツが配置可能な場所文章内コンテンツ
embed組み込みコンテンツが配置可能な場所なし(空要素)
fieldsetフローコンテンツが配置可能な場所必要に応じてlegend要素を1つ配置し、その後はフローコンテンツ
figcaptionfigure要素の内部に配置フローコンテンツ
figureフローコンテンツが配置可能な場所フローコンテンツ。必要に応じて子要素としてfigcaption要素を1つだけ含むことが可能
footerフローコンテンツが配置可能な場所フローコンテンツ。footer要素内のセクショニングコンテンツに含まれていないheader要素とfooter要素、およびmain要素は内部に含むことができない
fromフローコンテンツが配置可能な場所フローコンテンツ。別のfrom要素内部に含むことはできない
h1~h6フローコンテンツが配置可能な場所文章内コンテンツ
headhtml要素の1つ目の子要素として配置iframe要素のsrcdoc属性による文書の場合、または上位レベルのプロトコルによってtitle要素と同等の情報が得られる場合:文書情報コンテンツの要素をゼロ個以上。その他の場合:1つのtitle要素を含む文書情報コンテンツを1つ以上
headerフローコンテンツが配置可能な場所フローコンテンツ。header要素内のセクショニングコンテンツに含まれていないheader要素とfooter要素、およびmain要素は内部に含むことができない
hrフローコンテンツが配置可能な場所なし(空要素)
html文書ルート要素として配置。インラインフレームのように別の文書の一部として配置される場合は、それを組み込んだ要素が配置可能な場所最初にhead要素を1つ配置し、その後にbody要素を1つ配置
iフローコンテンツが配置可能な場所文章内コンテンツ
iframe組み込みコンテンツが配置可能な場所テキスト
img組み込みコンテンツが配置可能な場所なし(空要素)
input文章内コンテンツが配置可能な場所なし(空要素)
ins文章内コンテンツが配置可能な場所親要素と同じ
kbd文章内コンテンツが配置可能な場所文章内コンテンツ
keygen文章内コンテンツが配置可能な場所なし(空要素)
label文章内コンテンツが配置可能な場所文章内コンテンツ。別のlabel要素、およびラベルの対象ではないinput要素・textarea要素・button要素・select要素・output要素・meter要素・progress要素・keygen要素は内部に含むことができない
legendfieidset要素の最初の子要素として配置文章内コンテンツ
liul要素またはol要素の内部フローコンテンツ
link文章情報コンテンツが配置可能な場所、head要素の子要素であるnoscript要素の内部なし(空要素)
mainフローコンテンツが配置可能な場所。article要素・asaide要素・nav要素・header要素・footer要素内部には配置できないフローコンテンツ
map文章内コンテンツが配置可能な場所親要素と同じ
mark文章内コンテンツが配置可能な場所文章内コンテンツ
menuフローコンテンツが配置可能な場所。menu要素の子要素として配置順不同で、menuitem要素・menu要素・hr要素・script要素をそれぞれゼロ個以上
menuitemmenu要素の子要素として配置なし(空要素)
metacharset属性が指定されている場合またはhttp-equiv属性で文字コードを指定している場合:head要素内。http-equiv属性で文字コード以外の指定をしている場合:head要素の子要素であるnoscript要素内。name属性が指定されている場合:文書情報コンテンツが配置可能な場所なし(空要素)
meter文章内コンテンツが配置可能な場所文章内コンテンツ。別のmeter要素を内部に含むことはできない
navフローコンテンツが配置可能な場所フローコンテンツ。main要素の内部に含むことはできない
noscripthead要素内。noscript要素の内部に配置できない。文章内コンテンツが配置可能な場所。noscript要素の内部には配置できないhead要素の内部にあってスクリプトが無効な場合:順不同でlink要素・style要素・meta要素をそれぞれゼロ個以上。head要素の外部にあってスクリプトが無効の場合:親要素と同じ。別のnoscript要素を含むことはできない。それ以外の場合:テキスト
object組み込みコンテンツが配置可能な場所param要素をゼロ個以上、その後は親要素と同じ
olフローコンテンツが配置可能な場所li要素・script要素・template要素をゼロ個以上
optgroupselect要素の子要素として配置option要素・script要素・template要素をゼロ個以上
optionselect要素・datalist要素・optgroup要素の子要素として配置label属性とvalue属性の両方が指定されている場合:なし。label属性がしていされていてvalue属性が指定されていない場合:テキスト。label属性が指定されていない場合:テキスト
outpt文章内コンテンツが配置可能な場所文章内コンテンツ
pフローコンテンツが配置可能な場所文章内コンテンツ
paramobject要素の子要素として、他のフローコンテンツよりも前に配置なし(空要素)
picture組み込みコンテンツが配置可能な場所source要素をゼロ個以上配置し、最後にimg要素を1つ配置
preフローコンテンツが配置可能な場所文章内コンテンツ
progress文章内コンテンツが配置可能な場所文章内コンテンツ。別のprogress要素を内部に含むことはできない
q文章内コンテンツが配置可能な場所文章内コンテンツ
rbruby要素の子要素として配置文章内コンテンツ
rpruby要素またはrtc要素の子要素として、rt要素またはrtc要素の直前か直後に配置。rt要素とrt要素の間には配置できない文章内コンテンツ
rtruby要素またはrtc要素の子要素として配置文章内コンテンツ
rtcruby要素の子要素として配置文章内コンテンツ、rt要素、rp要素
ruby文章内コンテンツが配置可能な場所1.2のパターン1つ以上:1.最初に文章内コンテンツまたはrb要素を1つ以上配置。2.次にrt要素またはrtc要素を1つ以上配置
s文章内コンテンツが配置可能な場所文章内コンテンツ
samp文章内コンテンツが配置可能な場所文章内コンテンツ
script文章情報コンテンツおよび文章内コンテンツが配置可能な場所、script要素・template要素が配置可能な場所src属性が指定されていない場合:type属性の値によって異なる。src属性が指定されている場合:空、またはコメントによるスクリプトの説明
sectionフローコンテンツが配置可能な場所フローコンテンツ
select文章内コンテンツが配置可能な場所option要素・optgroup要素・script要素・template要素をゼロ個以上
small文章内コンテンツが配置可能な場所文章内コンテンツ
sourcepicture要素の子要素として、img要素よりも前に配置、video要素またはaudio要素の子要素として、他のフローコンテンツおよびtrack要素よりも前に配置なし(空要素)
span文章内コンテンツが配置可能な場所文章内コンテンツ
strong文章内コンテンツが配置可能な場所文章内コンテンツ
style文章内コンテンツが配置可能な場所、head要素の子要素であるnoscript要素内type属性の値によって異なる
sub文章内コンテンツが配置可能な場所文章内コンテンツ
summarydetails要素の最初の子要素として配置文章内コンテンツ、またはh1~h6要素のいずれか1つ
sup文章内コンテンツが配置可能な場所文章内コンテンツ
tableフローコンテンツが配置可能な場所caption要素を0~1個、colgroup要素を0個以上またはtr要素を1個以上、tfoot要素を0~1個。必要に応じてscript要素とtemplate要素を混入させることも可能
tbodytable要素の子要素として、caption要素・colgroup要素・thead要素よりも後に配置tr要素・script要素・template要素をゼロ個以上
tdtr要素の子要素として配置フローコンテンツ
template文書情報コンテンツが配置可能な場所、文章内コンテンツが配置可能な場所、script要素・template要素が配置可能な場所、span属性のないcolgroup要素の子要素として配置フローコンテンツまたは文書情報コンテンツ、または次の要素の内容として入れられる要素と同じ。ul・ol・dl・ryby・video・audio・object・select・fieldest・table・tr・thead・tbody・tfoot・colgroup・figure・details・menu
textarea文章内コンテンツが配置可能な場所テキスト
tfoottable要素の子要素として、caption要素・colgroup要素・thead要素・tbody要素・tr要素よりも後に配置また、table要素の子要素として配置できる数は1つまでtr要素・script要素・template要素をゼロ個以上
thtr要素の子要素として配置フローコンテンツ。ただし、セクショニングコンテンツ・見出しコンテンツ・header要素・footer要素を内部に含むことはできない
theadtable要素の子要素として、caption要素・colgroup要素よりも後でtbody要素・tfoot要素・tr要素よりも前に位置に配置tr要素・script要素・template要素をゼロ個以上
time文章内コンテンツが配置可能な場所datetime属性が指定されている場合:文章内コンテンツ。datetime属性が指定されていない場合:仕様書で定められた書式のテキスト
titlehead要素内で複数の配置は出来ないテキスト
trtable要素の子要素として、caption要素・colgroup要素・thead要素よりも後に配置、ただし、table要素の子要素となっているtbody要素がある場合は配置できない。thead要素・tbody要素・tfoot要素の子要素として配置td要素・th要素・script要素・template要素をゼロ個以上
trackvideo要素またはaudio要素の子要素として、他のフローコンテンツよりも前に配置なし(空要素)
u文章内コンテンツが配置可能な場所文章内コンテンツ
ulフローコンテンツが配置可能な場所li要素・script要素・template要素をゼロ個以上
var文章内コンテンツが配置可能な場所文章内コンテンツ
video組み込みコンテンツが配置可能な場所src属性が指定されている場合:先頭にtrack要素をゼロ個以上、その後は親要素と同じ。ただし、video要素とaudio要素は内部に含むことができない。src属性が指定されていない場合:先頭にsource要素をゼロ個以上、次にtrack要素をゼロ個以上、その後は親要素と同じ。ただし、video要素とaudio要素は内部に含むことができない。
wbr文章内コンテンツが配置可能な場所なし(空要素)

という事で今回は、HTML5.1要素の配置ルール一覧にておおよそ記載いたしました。

シンプルなページの際は、マークアップ自体も特に問題ないことと思いますが、レスポンシブでコーディングをおこなうことが多くなってきた昨今、複雑なページのマークアップになりますと、私としても迷うことが多々ございますので、初心者の方であればなおさらですね。

そんな時は、ぜひ上記をご参考に構文エラーのないマークアップを心がけることをおすすめします。

とりあえず、今回はここまで...。

お仕事のご依頼は下記より...、それではまた次回...。