@nosuke23
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Example</title> </head> <body> <section> <h1>Example<h1> </section> </body> </html>
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Example</title> </head> <body> <section> <h1>Example<h1> </section> </body> </html>
<p>
及び終了タグ</p>
によって区切られる要素で構造化されるh1
, section
, figure
@nosuke23
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Example</title> </head> <body> <section> <h1>Example<h1> </section> </body> </html>
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Example</title> </head> <body> <section> <h1>Example<h1> </section> </body> </html>
<p>
及び終了タグ</p>
によって区切られる要素で構造化されるh1
, section
, figure
https://daringfireball.net/projects/markdown/
The overriding design goal for Markdown’s formatting syntax is to make it as readable as possible. The idea is that a Markdown-formatted document should be publishable as-is, as plain text, without looking like it’s been marked up with tags or formatting instructions. While Markdown’s syntax has been influenced by several existing text-to-HTML filters, the single biggest source of inspiration for Markdown’s syntax is the format of plain text email.
Markdown はドキュメントの作成において、プレーンテキストの状態で読み/書きしやすいように設計されている
他の WYSIWYG エディターと比較して
Element | HTML | Markdown |
---|---|---|
Heading |
|
|
Bold |
|
|
List |
|
|
Markdown の記法はドキュメントを書く上で、比較的使用頻度の少ない記号(e.g. #
)を使用した意味的、視覚的な非形式的な記法によって、主要なセマンティックタグに置き換えることで、読み/書きのしやすさを実現している
非形式的なマークアップ言語は、機能を増やせば増やすほど複雑さが増す
使用頻度の低い機能は HTML(形式的言語)を使用すればよい
使用頻度の高い(と予想される)機能を限定的に導入することで最適化しなくてはならない
VFM は CSS によって組版用の HTML を生成するための Markdown 拡張
HTML(4.0~) はドキュメントの構造化及び意味づけを行うためのものであり、スタイリングは CSS の責務
Markdown によるマークアップは意味的(、視覚的)に行われるべき
意味的 | 非意味的 | |
---|---|---|
視覚的 | **important** | |
非視覚的 | <strong>important</strong> | <span class="bold">important</span> |
ノート
プログラミングノート
CSSによるスタイリングはセレクターによって要素を指定する
strong { text-weight: bolder; }
strong { text-weight: bolder; }
スタイルと要素の多対多の関係性を抽象化するために、セレクターはセマンティックに命名される(セマンティックマークアップ)
セマンティックマークアップは規模が大きくなるほど、名前衝突を回避するのが困難になる
ローカルスコープを使用することで、グローバルスコープの汚染(名前衝突の可能性)を回避する
Markdownでコンポーネントを宣言的(副作用を与えず)に使用してマークアップする(宣言的マークアップ)
::: ## Parent ::: --- path: ./child.md ---
::: ## Parent ::: --- path: ./child.md ---
--- style: ./child.css --- ::: ## Child :::
--- style: ./child.css --- ::: ## Child :::
div { border: 1px solid #000; }
div { border: 1px solid #000; }
<html> <head> ... <link rel="stylesheet" href="./child.css"> ... <head> <body> <div> <h2>Parent</h2> </div> <div class="_child_someid"> <h2 class="_child_someid">Child</h2> </div> </body> </html>
<html> <head> ... <link rel="stylesheet" href="./child.css"> ... <head> <body> <div> <h2>Parent</h2> </div> <div class="_child_someid"> <h2 class="_child_someid">Child</h2> </div> </body> </html>
div._child_someid { border: 1px solid #000; }
div._child_someid { border: 1px solid #000; }