SlideShare a Scribd company logo
1 of 64
Download to read offline
マークアップの
おまじないをしっかり理解する
とりあえずで済ませてない?
Tyankatsu
•フロントエンドエンジニアになりたいデザイナー
•ほうれん草⼤好き
•gulp⼤好き
•jQuery飽きた
•nativeJS勉強中
•https://github.com/tyankatsu0105
•https://twitter.com/tyankatsu5
•https://anysense.co.jp/
おまじない⼀覧
テキストはpタグで囲う
imgはfigureで囲う
時間はtimeタグ
クリックできる箇所はaタグにする
テーブルはtableタグ
テキストは
pタグで囲う
テキストはpタグで囲う
テキストはpタグで囲う
テキストはpタグで囲う
「P」aragraph:段落
p要素は段落を表す。
https://momdo.github.io/html5/grouping-content.html#the-p-
element
テキストはpタグで囲う
段落ってことは
2⽂以上ありそう
テキストはpタグで囲う
もしかして、
W3Cが指定している
段落って、
⽇本⼈が思う段落と
違うのでは?
テキストはpタグで囲う
A paragraph is typically a run of
phrasing content that forms a block of
text with one or more sentences that
discuss a particular topic, as in
typography, but can also be used for
more general thematic grouping.
https://dev.w3.org/html5/spec-preview/content-
models.html#paragraph
テキストはpタグで囲う
わっかんね!!
テキストはpタグで囲う
段落とは、通常、特定の話題を扱う1つ以
上の⽂を伴うテキストのブロックを形成す
るフレージング・コンテントの連なりのこ
とで、印刷における段落と同様です。
http://www.html5.jp/tag/models/index.html#paragraph
テキストはpタグで囲う
1⽂でも段落になる。
だったら
テキストは全部pタグ?
テキストはpタグで囲う
そうとは限らない
テキストはpタグで囲う
テキストを必ず
タグで囲うルールはない
テキストはpタグで囲う
暗黙の段落
がどうやら
関係ありそう
テキストはpタグで囲う
フレージング・コンテンツが通常のセク
ションやセクショニング・ルートの直下に
置かれた場合、その直前から暗黙の段落が
始まる
http://webcre8.jp/investigate/html-implied-
specifications.html#title2
テキストはpタグで囲う
つまり、
pタグは明⽰的に段落を
指定しているのであって、暗黙
の段落がある限り、
テキストは絶対pタグで囲う
ということではない。
テキストはpタグで囲う
補⾜
狭義のHTML5として、
「Semantic Elements」が
追加されているので、適したタグ
をつけよう。
なんでもpタグではないぞ!!
imgは
figureで囲う
imgはfigureで囲う
imgはfigureで囲う
画像がでたらとりあえず
figureで囲おう!
imgはfigureで囲う
ちょっと待て!!!!
imgはfigureで囲う
ふつう <figure> は画像、イラスト、グ
ラフ、コードの断⽚など、⽂書の本⽂の流
れから参照されるものの、本⽂の流れに影
響を与えることなく、⽂書のほかの部分や
付録に移動することが可能なものに⽤いま
す。
https://developer.mozilla.org/ja/docs/Web/HTML/Element/
figure
imgはfigureで囲う
画像に使うの
合ってんじゃん
imgはfigureで囲う
ちょっと待て!!!!
imgはfigureで囲う
ふつう <figure> は画像、イラスト、グ
ラフ、コードの断⽚など、⽂書の本⽂の流
れから参照されるものの、本⽂の流れに影
響を与えることなく、⽂書のほかの部分や
付録に移動することが可能なものに⽤いま
す。
https://developer.mozilla.org/ja/docs/Web/HTML/Element/
figure
imgはfigureで囲う
つまり
こういうこと
imgはfigureで囲う
figureを抜き出しても抜かれた側
には問題はない
figureを抜き出してもfigure単体
で⾃⼰完結してないといけない
imgはfigureで囲う
抜き出してみました
imgはfigureで囲う
imgはfigureで囲う
imgはfigureで囲う
imgはfigureで囲う
imgはfigureで囲う
これは不正解
理由:抜き出しても意味分からない
imgはfigureで囲う
これは正解
理由:抜き出しても意味分かる
imgはfigureで囲う
補⾜
figureの中にのみ使えるfigcaption
は、絶対必要ではない。キャプショ
ンが盛り込まれている画像であれば、
figureの中にimgだけでも良いし、
figureでのマークアップは正解。
 
ここが詳しい→https://qiita.com/kyoyababa/items/
154953226358a0e833d7
時間は
timeタグ
時間はtimeタグ
時間はtimeタグ
これは不正解
時間はtimeタグ
この要素は計算を⾏えない特殊な⽇付に対
しては適切でなく、またグレゴリオ暦導⼊
前の⽇付に対して使⽤するべきではありま
せん
https://developer.mozilla.org/ja/docs/Web/HTML/Element/time
時間はtimeタグ
「⽉」「⽇」は機械不可読
時間はtimeタグ
正解パターンの
5⽉16⽇
の⼀例
時間はtimeタグ
⾊々あるが
yyyy-mm-dd hh:mm:ss
のフォーマットが基本的
https://qiita.com/YusukeHirao/items/
6140a58a1dd1d5d60a7c
http://www.html5.jp/tag/elements/time.html
クリックできる
箇所はaタグにする
クリックできる箇所はaタグにする
aタグで要素を囲うと
カーソルがこうなる
クリックできる箇所はaタグにする
うわークリックできそう
(^q^)ジュルリ
クリックできる箇所はaタグにする
でもそれ
クリックできる箇所はaタグにする
:hover{
cursor: pointer;
}
クリックできる箇所はaタグにする
だったら
違うタグでも良くね?
クリックできる箇所はaタグにする
そこで・・
クリックできる箇所はaタグにする
<button type=“button”>
クリックできる箇所はaタグにする
buttonの説明を
⾒てみる
クリックできる箇所はaタグにする
type 属性に button を指定したボタンに
は、既定の動作はなく、クリックするなど
しても何も起こりません。クライアントサ
イドスクリプトで要素にイベントを設定す
ることにより、操作時の挙動を設定するこ
とができます。
https://developer.mozilla.org/ja/docs/Web/HTML/Element/
button
クリックできる箇所はaタグにする
噛み砕いてみる
クリックできる箇所はaタグにする
button type=“button”はボタン
である。ボタンであってそれ以外
でもそれ以上でもない
Javascriptの処理のトリガーにな
る
クリックできる箇所はaタグにする
つまり
<a href=“javascript:void(0)”>
にせずに
<button type=“button”>
にすればいい
クリックできる箇所はaタグにする
クリックできる箇所はaタグにする
クリックできるけど、
リンクではない箇所は
buttonでマークアップ
しよう
テーブルは
tableタグ
たぶん説明無理!!!
(時間)
html5.2で
dl直下にdivを置けるよう
になった
tableタグもいいけど
レスポンシブな時代
dlも視野に⼊れては?
終わり

More Related Content

What's hot

10分でわかるPythonの開発環境
10分でわかるPythonの開発環境10分でわかるPythonの開発環境
10分でわかるPythonの開発環境Hisao Soyama
 
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編- Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編- Hironori Sekine
 
次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発shoma h
 
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
RubyエンジニアがPythonをdisるためにPythonを勉強してみたRubyエンジニアがPythonをdisるためにPythonを勉強してみた
RubyエンジニアがPythonをdisるためにPythonを勉強してみたYusuke Kon
 
数理最適化とPython
数理最適化とPython数理最適化とPython
数理最適化とPythonYosuke Onoue
 
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016Kei IWASAKI
 
Python札幌 2012/06/17
Python札幌 2012/06/17Python札幌 2012/06/17
Python札幌 2012/06/17Shinya Okano
 
PyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッションPyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッションTetsuya Morimoto
 
Google BigQueryについて 紹介と推測
Google BigQueryについて 紹介と推測Google BigQueryについて 紹介と推測
Google BigQueryについて 紹介と推測Ryuji Tamagawa
 
S01 t2 akutsu_my_pythonhistory
S01 t2 akutsu_my_pythonhistoryS01 t2 akutsu_my_pythonhistory
S01 t2 akutsu_my_pythonhistoryTakeshi Akutsu
 
スクレイピングとPython
スクレイピングとPythonスクレイピングとPython
スクレイピングとPythonHironori Sekine
 
オリエンテーション
オリエンテーションオリエンテーション
オリエンテーションTakeshi Akutsu
 
OSS Study#19_LT
OSS Study#19_LTOSS Study#19_LT
OSS Study#19_LTNaoY-2501
 
本気でPythonで宛名書きした話
本気でPythonで宛名書きした話本気でPythonで宛名書きした話
本気でPythonで宛名書きした話Satoshi Yamada
 
Two sides of Python Engineer Training Book in PyCon mini Sapporo
Two sides of Python Engineer Training Book in PyCon mini SapporoTwo sides of Python Engineer Training Book in PyCon mini Sapporo
Two sides of Python Engineer Training Book in PyCon mini SapporoTakanori Suzuki
 
[PyConJP2019]Pythonで切り開く新しい農業
[PyConJP2019]Pythonで切り開く新しい農業[PyConJP2019]Pythonで切り開く新しい農業
[PyConJP2019]Pythonで切り開く新しい農業Makoto Koike
 
PyAutoGUI等Pythonライブラリによる自動化支援
PyAutoGUI等Pythonライブラリによる自動化支援PyAutoGUI等Pythonライブラリによる自動化支援
PyAutoGUI等Pythonライブラリによる自動化支援H Iseri
 

What's hot (20)

10分でわかるPythonの開発環境
10分でわかるPythonの開発環境10分でわかるPythonの開発環境
10分でわかるPythonの開発環境
 
Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編- Pythonによるwebアプリケーション入門 - Django編-
Pythonによるwebアプリケーション入門 - Django編-
 
stapy#23 LT
stapy#23 LTstapy#23 LT
stapy#23 LT
 
次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発次世代言語 Python による PyPy を使った次世代の処理系開発
次世代言語 Python による PyPy を使った次世代の処理系開発
 
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
RubyエンジニアがPythonをdisるためにPythonを勉強してみたRubyエンジニアがPythonをdisるためにPythonを勉強してみた
RubyエンジニアがPythonをdisるためにPythonを勉強してみた
 
数理最適化とPython
数理最適化とPython数理最適化とPython
数理最適化とPython
 
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
たった一ファイルの python スクリプトから始めるOSS開発入門 / PyCon JP 2016
 
Python札幌 2012/06/17
Python札幌 2012/06/17Python札幌 2012/06/17
Python札幌 2012/06/17
 
PyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッションPyCon JP 2016 ビギナーセッション
PyCon JP 2016 ビギナーセッション
 
Google BigQueryについて 紹介と推測
Google BigQueryについて 紹介と推測Google BigQueryについて 紹介と推測
Google BigQueryについて 紹介と推測
 
S09 t0 orientation
S09 t0 orientationS09 t0 orientation
S09 t0 orientation
 
S01 t2 akutsu_my_pythonhistory
S01 t2 akutsu_my_pythonhistoryS01 t2 akutsu_my_pythonhistory
S01 t2 akutsu_my_pythonhistory
 
スクレイピングとPython
スクレイピングとPythonスクレイピングとPython
スクレイピングとPython
 
オリエンテーション
オリエンテーションオリエンテーション
オリエンテーション
 
18 minitus発表資料
18 minitus発表資料18 minitus発表資料
18 minitus発表資料
 
OSS Study#19_LT
OSS Study#19_LTOSS Study#19_LT
OSS Study#19_LT
 
本気でPythonで宛名書きした話
本気でPythonで宛名書きした話本気でPythonで宛名書きした話
本気でPythonで宛名書きした話
 
Two sides of Python Engineer Training Book in PyCon mini Sapporo
Two sides of Python Engineer Training Book in PyCon mini SapporoTwo sides of Python Engineer Training Book in PyCon mini Sapporo
Two sides of Python Engineer Training Book in PyCon mini Sapporo
 
[PyConJP2019]Pythonで切り開く新しい農業
[PyConJP2019]Pythonで切り開く新しい農業[PyConJP2019]Pythonで切り開く新しい農業
[PyConJP2019]Pythonで切り開く新しい農業
 
PyAutoGUI等Pythonライブラリによる自動化支援
PyAutoGUI等Pythonライブラリによる自動化支援PyAutoGUI等Pythonライブラリによる自動化支援
PyAutoGUI等Pythonライブラリによる自動化支援
 

More from anysense_ss

メタ思考トレーニング
メタ思考トレーニングメタ思考トレーニング
メタ思考トレーニングanysense_ss
 
画像収集を捗らせたい話
画像収集を捗らせたい話画像収集を捗らせたい話
画像収集を捗らせたい話anysense_ss
 
無能を定義したら無能がいなくなった話 ~ コミュニケーションの齟齬について ~
無能を定義したら無能がいなくなった話 ~ コミュニケーションの齟齬について ~無能を定義したら無能がいなくなった話 ~ コミュニケーションの齟齬について ~
無能を定義したら無能がいなくなった話 ~ コミュニケーションの齟齬について ~anysense_ss
 
Markuplintし損ねた男の話
Markuplintし損ねた男の話Markuplintし損ねた男の話
Markuplintし損ねた男の話anysense_ss
 
内なる言葉のすすめ ~妄想から現実へ~
内なる言葉のすすめ ~妄想から現実へ~内なる言葉のすすめ ~妄想から現実へ~
内なる言葉のすすめ ~妄想から現実へ~anysense_ss
 
ショートカットで時短する
ショートカットで時短するショートカットで時短する
ショートカットで時短するanysense_ss
 
不純な動機で「puppeteer」 でスクレイピングを始めてみた
不純な動機で「puppeteer」 でスクレイピングを始めてみた不純な動機で「puppeteer」 でスクレイピングを始めてみた
不純な動機で「puppeteer」 でスクレイピングを始めてみたanysense_ss
 
3年ぐらい絵を書き続けた男の話
3年ぐらい絵を書き続けた男の話3年ぐらい絵を書き続けた男の話
3年ぐらい絵を書き続けた男の話anysense_ss
 
2017下半期の音楽を調べた男の話
2017下半期の音楽を調べた男の話2017下半期の音楽を調べた男の話
2017下半期の音楽を調べた男の話anysense_ss
 
Sketchのライセンスを更新した男の話
Sketchのライセンスを更新した男の話Sketchのライセンスを更新した男の話
Sketchのライセンスを更新した男の話anysense_ss
 
マーケにも使える!男脳と女脳の違い
マーケにも使える!男脳と女脳の違いマーケにも使える!男脳と女脳の違い
マーケにも使える!男脳と女脳の違いanysense_ss
 
自分で自分を追い込む 1週間で何とかする
自分で自分を追い込む 1週間で何とかする自分で自分を追い込む 1週間で何とかする
自分で自分を追い込む 1週間で何とかするanysense_ss
 
プレゼンマスターになろう!
プレゼンマスターになろう!プレゼンマスターになろう!
プレゼンマスターになろう!anysense_ss
 
linterとprettierというコード砂漠に緑をもたらす救世主
linterとprettierというコード砂漠に緑をもたらす救世主linterとprettierというコード砂漠に緑をもたらす救世主
linterとprettierというコード砂漠に緑をもたらす救世主anysense_ss
 

More from anysense_ss (14)

メタ思考トレーニング
メタ思考トレーニングメタ思考トレーニング
メタ思考トレーニング
 
画像収集を捗らせたい話
画像収集を捗らせたい話画像収集を捗らせたい話
画像収集を捗らせたい話
 
無能を定義したら無能がいなくなった話 ~ コミュニケーションの齟齬について ~
無能を定義したら無能がいなくなった話 ~ コミュニケーションの齟齬について ~無能を定義したら無能がいなくなった話 ~ コミュニケーションの齟齬について ~
無能を定義したら無能がいなくなった話 ~ コミュニケーションの齟齬について ~
 
Markuplintし損ねた男の話
Markuplintし損ねた男の話Markuplintし損ねた男の話
Markuplintし損ねた男の話
 
内なる言葉のすすめ ~妄想から現実へ~
内なる言葉のすすめ ~妄想から現実へ~内なる言葉のすすめ ~妄想から現実へ~
内なる言葉のすすめ ~妄想から現実へ~
 
ショートカットで時短する
ショートカットで時短するショートカットで時短する
ショートカットで時短する
 
不純な動機で「puppeteer」 でスクレイピングを始めてみた
不純な動機で「puppeteer」 でスクレイピングを始めてみた不純な動機で「puppeteer」 でスクレイピングを始めてみた
不純な動機で「puppeteer」 でスクレイピングを始めてみた
 
3年ぐらい絵を書き続けた男の話
3年ぐらい絵を書き続けた男の話3年ぐらい絵を書き続けた男の話
3年ぐらい絵を書き続けた男の話
 
2017下半期の音楽を調べた男の話
2017下半期の音楽を調べた男の話2017下半期の音楽を調べた男の話
2017下半期の音楽を調べた男の話
 
Sketchのライセンスを更新した男の話
Sketchのライセンスを更新した男の話Sketchのライセンスを更新した男の話
Sketchのライセンスを更新した男の話
 
マーケにも使える!男脳と女脳の違い
マーケにも使える!男脳と女脳の違いマーケにも使える!男脳と女脳の違い
マーケにも使える!男脳と女脳の違い
 
自分で自分を追い込む 1週間で何とかする
自分で自分を追い込む 1週間で何とかする自分で自分を追い込む 1週間で何とかする
自分で自分を追い込む 1週間で何とかする
 
プレゼンマスターになろう!
プレゼンマスターになろう!プレゼンマスターになろう!
プレゼンマスターになろう!
 
linterとprettierというコード砂漠に緑をもたらす救世主
linterとprettierというコード砂漠に緑をもたらす救世主linterとprettierというコード砂漠に緑をもたらす救世主
linterとprettierというコード砂漠に緑をもたらす救世主
 

マークアップのおまじないをしっかり理解する