html
セマンティックなHTMLマークアップ、ドキュメント構造、フォーム、アクセシビリティ属性、およびモダンなHTMLのベストプラクティスに関するガイドラインを提供します。適切なHTML要素の選択やアクセシブルなマークアップの実装時に活用できます。
description の原文を見る
Guidelines for semantic HTML markup, document structure, forms, accessibility attributes, and modern HTML best practices
SKILL.md 本文
HTML開発ガイドライン
コア原則
- セマンティックHTMLを記述してアクセシビリティとSEOを向上させる
- 各要素を意図した目的に適切に使用する
- 適切なドキュメント構造と階層を確保する
- ARIAロールと属性を必要に応じて使用してアクセシビリティを優先する
セマンティック要素
ドキュメント構造
<header>を導入コンテンツとナビゲーションに使用する<main>をプライマリコンテンツに使用する(ページごとに1つ)<footer>をフッターコンテンツに使用する<nav>をナビゲーションセクションに使用する<aside>を周辺関連コンテンツに使用する
コンテンツセクション
<article>を独立した配布可能なコンテンツに使用する<section>をコンテンツのテーマ別グループ化に使用する- 適切な見出しの階層構造を使用する(
<h1>から<h6>) - ページごとに1つの
<h1>のみ使用し、メインテーマを表現する
テキストコンテンツ
<p>を段落に使用する<ul>,<ol>,<dl>をリストに適切に使用する<blockquote>を引用に使用する<figure>と<figcaption>をイラストレーションに使用する
インタラクティブ要素
ボタンとリンク
<button>をナビゲートしないクリック可能なアクションに使用する<a>をURLにナビゲートするリンクに使用する- リンクに常に
href属性を含める - クリック可能な要素に
<div>や<span>を使用しない
フォーム
<form>をactionとmethod属性を適切に設定して使用するfor属性を使用してラベルをインプットに関連付ける- 適切なインプットタイプを使用する(
email,tel,numberなど) <fieldset>と<legend>で関連インプットをグループ化する- 検証属性(
required,pattern,min,max)を含める
メディア要素
画像
- 画像に常に
alt属性を含める - 情報提供画像に対して説明的なalt テキストを使用する
- 装飾画像に空の
alt=""を使用する - レスポンシブ画像に
srcsetとsizesを使用する - レイアウトシフトを防ぐために
widthとheightを含める
ビデオとオーディオ
- キャプションとトランスクリプトを提供する
- 互換性のために複数のソース形式を含める
- ビデオサムネイルに
poster属性を使用する - 自動再生がユーザー体験に与える影響を考慮する
アクセシビリティ(ARIA)
ARIAを使用するタイミング
- ネイティブHTMLセマンティクスが不十分な場合にARIAを使用する
- 可能な場合はARIAより優先してネイティブHTML要素を使用する
- ARIA属性がアクテュアル要素の動作と一致していることを確認する
一般的なARIA属性
aria-labelはアクセシブル名に使用するaria-describedbyは追加の説明に使用するaria-hiddenは装飾要素に使用するaria-expandedは展開可能なセクションに使用するaria-liveは動的コンテンツ更新に使用する
ランドマーク
- ランドマークロールを使用してページリージョンを定義する
- すべてのコンテンツがランドマーク内にあることを確認する
- セマンティック要素が利用できない場合のみ
role="main",role="navigation"などを使用する
ベストプラクティス
ドキュメントメタ
- 適切な
<!DOCTYPE html>宣言を含める <html>要素に言語属性を設定する- レスポンシブデザイン用のviewportメタタグを含める
- SEO用に適切なメタタグを使用する
コード品質
- W3C バリデータを使用してHTMLを検証する
- 一貫したインデンテーションを保つ
- すべてのタグを適切に閉じる(セルフクロージングを含む)
- 要素名と属性に小文字を使用する
非推奨要素
- スタイリングに
<font>,<center>,<b>,<i>を避ける - ビジュアルプレゼンテーションにはCSSを使用する
- セマンティック強調に
<strong>と<em>を使用する
HTMX統合
HTMXでインタラクティビティを使用する場合:
- サーバーリクエストに
hx-get,hx-post属性を使用する hx-targetを活用して更新対象を指定するhx-swapを使用してコンテンツの挿入方法を制御する- 重要なアクション向けに
hx-confirmを実装する - 完全なリフレッシュなしでURL更新に
hx-push-urlを使用する
Bootstrap統合
Bootstrapを使用する場合:
- レイアウトにBootstrapのグリッドシステムを活用する
- 適切なマークアップ構造でBootstrapコンポーネントを使用する
- コンポーネントに必要なARIA属性を含める
- 間隔とタイポグラフィにBootstrapのユーティリティクラスを使用する
- Bootstrapクラスを使用してカスタムCSSを最小化する
パフォーマンス
- DOM深度と複雑性を最小化する
- スクリプトを適切に
deferまたはasyncで読み込む - ビューフォルド下の画像に
loading="lazy"を使用する <link rel="preload">で重要リソースをプリロードする
ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- mindrally
- リポジトリ
- mindrally/skills
- ライセンス
- Apache-2.0
- 最終更新
- 不明
Source: https://github.com/mindrally/skills / ライセンス: Apache-2.0
関連スキル
doubt-driven-development
重要な判断はすべて、本番環境への展開前に新しい視点から対抗的レビューを実施します。速度より正確性が重要な場合、不慣れなコードを扱う場合、本番環境・セキュリティに関わるロジック・取り消し不可の操作など影響度が高い場合、または後でバグを修正するよりも今検証する方が効率的な場合に活用してください。
apprun-skills
TypeScriptを使用したAppRunアプリケーションのMVU設計に関する総合的なガイダンスが得られます。コンポーネントパターン、イベントハンドリング、状態管理(非同期ジェネレータを含む)、パラメータと保護機能を備えたルーティング・ナビゲーション、vistestを使用したテストに対応しています。AppRunコンポーネントの設計・レビュー、ルートの配線、状態フローの管理、AppRunテストの作成時に活用してください。
desloppify
コードベースのヘルスチェックと技術負債の追跡ツールです。コード品質、技術負債、デッドコード、大規模ファイル、ゴッドクラス、重複関数、コードスメル、命名規則の問題、インポートサイクル、結合度の問題についてユーザーが質問した場合に使用してください。また、ヘルススコアの確認、次の改善項目の提案、クリーンアップ計画の作成をリクエストされた際にも対応します。29言語に対応しています。
debugging-and-error-recovery
テストが失敗したり、ビルドが壊れたり、動作が期待と異なったり、予期しないエラーが発生したりした場合に、体系的な根本原因デバッグをガイドします。推測ではなく、根本原因を見つけて修正するための体系的なアプローチが必要な場合に使用してください。
test-driven-development
テスト駆動開発により実装を進めます。ロジックの実装、バグの修正、動作の変更など、あらゆる場面で活用できます。コードが正常に動作することを証明する必要がある場合、バグ報告を受けた場合、既存機能を修正する予定がある場合に使用してください。
incremental-implementation
変更を段階的に実施します。複数のファイルに影響する機能や変更を実装する場合に使用してください。大量のコードを一度に書こうとしている場合や、タスクが一度では完結できないほど大きい場合に活用します。