Skip to content
https://b.hatena.ne.jp

Accessibility

· 13 checks — Landmarks, headings, alt text, forms, and link quality rolled into one auditable list.
SCORE
47
GRADE
F
FIX
6
REVIEW
6
PASS
1
INFO
0
Checks
13
1 PASS 6 REVIEW 6 FIX
D
Landmark Structure
Action
1 landmarks
FIX
1 landmarks
Critical::
No <main> landmark found
Screen reader users cannot quickly navigate to the primary content. Wrap your main content in <main>.
Warning::
No <nav> landmark found
Info::
No contentinfo (footer) landmark
Warning::
Skip navigation link is missing (WCAG 2.4.1)
Add a skip link as the first focusable element so keyboard users can bypass repeated navigation.
Page Structure — as a screen reader sees it
BANNER header MAIN (missing!) CONTENTINFO (missing!)

Screen reader users cannot quickly navigate to the primary content. Wrap your main content in <main>.

Why this matters

Without a <main> landmark, screen-reader users can't skip past the navigation to the page content — every page starts with re-reading the menu.

Learn more

The <main> element marks the page's primary content area. Assistive tech offers a 'jump to main' shortcut — but only if <main> exists. Without it, every page navigation forces re-reading the header. Wrap your primary content in a single <main>.

Source: WAI-ARIA / WCAG 2.4.1

Add a skip link as the first focusable element so keyboard users can bypass repeated navigation.

Why this matters

Without a skip-nav link, keyboard users tab through every nav item before reaching content — every page, every visit.

Learn more

WCAG 2.4.1 (Bypass Blocks) requires a mechanism to skip past repeated content. The standard implementation is a 'Skip to main content' link that's the first focusable element, visually hidden until focused. Three lines of HTML + four of CSS.

Source: WCAG 2.1 SC 2.4.1

D
Web Manifest
Action
Not found
FIX
Not found
Info::
No web manifest found
No manifest at standard paths (/manifest.json, /site.webmanifest). A manifest is optional but enables PWA features like home screen installation and standalone display.

No web manifest found.

D
Dark Mode Support
Action
No dark mode signals
FIX
No dark mode signals
Info::
No dark mode signals detected
Consider adding CSS with @media (prefers-color-scheme: dark) and <meta name='color-scheme' content='light dark'>.
Info::
Detection limited to meta tags and inline styles
External CSS files may contain prefers-color-scheme rules not visible to this scan.
Dark ModeNo Dark Mode Detected
color-scheme meta Not set Dark theme-color Not set CSS indicators Not detected

Detection limited to meta tags and inline styles.

D
Print Stylesheet
Action
No print styles
FIX
No print styles
Info::
No print-specific styles detected
When users print this page, they get the screen layout including navigation and non-essential elements. Add @media print rules to hide navigation and optimize layout for paper.
Print Stylesheet No Print Styles
Print stylesheet Not found Inline @media print Not detected
F
Navigation UX
Action
No navigation patterns
FIX
No navigation patterns
Info::
No breadcrumbs, search, or skip link detected
These navigation aids help users orient themselves and find content efficiently, especially on large sites.
Breadcrumbs
Search
Skip Link
Labeled Navigation
Back to Top
Hamburger Menu
Sticky Navigation Cannot reliably detect (CSS-based)
0 of 6 testable patterns navigation patterns detected. Limited navigation support. Consider adding breadcrumbs, search, and skip link.
B
Heading Hierarchy
164 headings, 1 skip(s)
REVIEW
164 headings, 1 skip(s)
Info::
Single H1 present
Warning::
Heading level skipped: H1 → H3 (missing H2)
Skipping heading levels breaks the document outline. Screen readers may interpret missing levels as structural errors.
Warning::
3 empty heading(s)
Empty headings appear in the document outline but provide no information.
  • H2 はてなブックマーク
  • H2 (empty)
  • H2 (empty)
  • H2 (empty)
  • H1 はてなブックマーク
  • H3 「自衛官が制服を着てソープで働いていいのか」国歌斉唱めぐり記者質問、幕僚長の回答にツッコミも - 弁護士ドットコムニュース skipped
  • H3 [1話(読切)+2話]ヒトナー - 屋宜知宏 | 少年ジャンプ+
  • H3 人気の「狭小住宅」 国の計画から「最低居住面積水準」削除に | NHKニュース
  • H3 スプラトゥーン レイダース | Nintendo Switch 2 | 任天堂
  • H3 カシオ、“誰でも買ったその日から音楽制作・演奏を楽しめる”サンプラー
  • H3 《抗日映画『731』に出演》日本人俳優・小野巽(25)が中国の撮影スタジオで目撃した“信じられない光景”とは | 文春オンライン
  • H3 合意目前に見えたイランとの和平交渉、トランプ氏の相次ぐSNS投稿でぶち壊しに
  • H3 トーチweb ニーハオ、おいしい東京日和。 【6.帰省と泡菜】
  • H3 「清潔感」とかいう呪いの言葉を真に受けてる弱男へ
  • H2 あとで読むランキング
  • H3 クックパッドが誰向けなのかがわかりません。 無料では殿堂入りや人気順などの検索ができず、レシピを選ぶ側の目が問われますので、料理初心者�
  • H3 海外で急増する謎の音楽「Japanese Funk」とは何か? | 徹底検証「Japanese Funk」 (前編) - 音楽ナタリー コラム
  • H3 設計書・コード・テストを全部AIに書かせて半年間開発してみたよ
  • H3 料理全然しないのに、土井善晴の味噌汁を1年間作り続けた|ジスロマック
  • H3 Claude Code を Level 5 まで育てたら、開発が「指示と確認だけ」になった — 実ファイル構成で解説 - Qiita
  • H3 ウゴウゴルーガが40代の脳に与えたダメージと、就職氷河期生存率の相関について|Naaw
  • H3 組織の壊し方|株式会社 帝国データバンク[TDB]
  • H3 ChatGPTが長いチャットで重くなったときに使っている「引き継ぎプロンプト」 - Qiita
  • H3 「あいつには関わりたくない」と思われていた2年間の話をする - Qiita
  • H3 ソフトウェアや知能が安くなったときに起きること - 🐴 (馬)
  • H3 クックパッドが誰向けなのかがわかりません。 無料では殿堂入りや人気順などの検索ができず、レシピを選ぶ側の目が問われますので、料理初心者�
  • H3 歴史初学者のための「歴史系ゆっくり解説」入門
  • H2 おすすめ特集 - ISUCON12 メディア協力:はてなブックマーク
  • H3 年々進化するチートシートと万全の準備体制でついに栄冠を獲得!ISUCON12優勝チームNaruseJun特別インタビュー | gihyo.jp
  • H3 「リアルタイム可視化グッズ」「味集中カウンター」で予選突破? ISUCON12にまつわるブログをピックアップしました - 週刊はてなブログ
  • H3 ISUCON 事前講習2022 座学 を開催しました(資料と動画と問題あり) : ISUCON公式Blog
  • H3 「ISUCONは“エンジニアとしての自分”振り返る絶好の機会」カヤック&サイバーエージェントの作問担当2人に聞いた『ISUCON12』制覇のポイント三つ
  • H2 おすすめ特集 - エンジニアブログ
  • H3 今週のはてなブックマーク数ランキング(2026年4月第3週) - はてなブックマーク開発ブログ
  • H3 ZEN Study バックエンドの 10年を振り返って - ドワンゴ教育サービス開発者ブログ
  • H3 Active Record アソシエーションを安全に廃止する - ANDPAD Tech Blog
  • H3 大吉祥寺.pm2026のプロポーザル募集開始しました! - kichijojipm’s blog
  • H2 はてなブログ - 注目記事
  • H3 サラダにして美味しくいただいてます、家庭菜園 / ANGELINA「モンブラン」 - DIYおばちゃんのガーデニングと日々ブログ
  • H3 128bit以上の可変長をもつ UUID Long の提案仕様 - ASnoKaze blog
  • H3 あこがれの女性に出会った話(60歳にしか見えない80歳の女性のとりとめもない話)   Yuri Simonov トルコ行進曲 - 乱鳥の書きなぐり はてなブロ�
  • H3 「ビスコ保存缶」の味は普通のビスコと同じ?子どもも食べやすい非常食を求めて試してみた
  • H2 注目のアニメからの新着
  • H3 「ガンダム」初の実写映画、Netflixが製作開始 メインキャストも正式発表 - コミックナタリー
  • H3 名探偵プリキュア! 第11話「キュアアルカナ・シャドウ、現る」
  • H3 「理解ってる人だ」 実寸大ガンダムを見に行った際、あえてガンダムの斜め後方に立ちピンチを救われた一般人ごっこをした投稿が納得感しかない
  • H3 日本では8〜9割のアニメが非独占で配信され、健全な競争環境が保たれている。一方欧米では、ソニー傘下のCrunchyrollがFunimationを買収したことで、全
  • H2 注目のガジェットからの新着
  • H3 Apple、ティム・クックCEOが退任へ 後任はハードウェア部門トップのジョン・ターナス氏
  • H3 TimからAppleコミュニティのみなさんへ
  • H3 ノジマ、日立の家電事業を買収 1100億円 - 家電 Watch
  • H3 カシオ、“誰でも買ったその日から音楽制作・演奏を楽しめる”サンプラー
  • H2 本・書評からの新着
  • H3 チベット仏教ポータル
  • H3 昔、マンガが文庫化するとき作者とは別のイラストレーターが表紙を描くことがあったけどあれは何だったの→当時の社会やマンガの扱いを知らな��
  • H3 「ソーシャルエンジニアリング」の裏側を暴く5冊。技術が進歩しても、騙しの構造は変わらない【IPUSIRON】|レバテックLAB - レバテックLAB
  • H3 「探偵チームKZ事件ノートにメロついてる人沢山見るけど、そんなにやばいの?」今更児童書なんて…と思うかもしれないが、『KZ'D』は大人の我々��
  • H2 おすすめ特集 - 企業メディア
  • H3 「ソーシャルエンジニアリング」の裏側を暴く5冊。技術が進歩しても、騙しの構造は変わらない【IPUSIRON】|レバテックLAB - レバテックLAB
  • H3 マグロの赤身を「七味にんにくオイル」に10分漬け。ご飯にも酒にもめちゃ合う【筋肉料理人】 - メシ通 | ホットペッパーグルメ
  • H3 湯島「夜学バー」に学ぶ、“誰も取り残さない”接客術。目指すは常連ムーブのないお店 - おなじみ丨近くの店から、なじみの店へ。
  • H3 「あの人さえいなければ」──この誤診が、チームの生産性を下げる | サイボウズ式
  • H2 週刊はてなブログ
  • H3 【エイプリルフール】「ナナメ読み機能」提供終了のお知らせ - 週刊はてなブログ
  • H3 【新機能】情報過多の時代に、究極の効率化を。「はてなブログ・ナナメ読み機能」をリリースしました - 週刊はてなブログ
  • H3 AIのやりすぎで頭がおかしくなった? ブログを書いて冷静になりましょう - 週刊はてなブログ
  • H3 【買ってよかった】図書館のようなキーボードに、氷みたいなヴィンテージグラス! はてなブロガーの2025年ベストバイまとめ - 週刊はてなブログ
  • H2 新着エントリー - 総合
  • H3 ハトは楽園実験でカオスを生成していた――「ご褒美が確実」でも違う答えを試し続ける - ナゾロジー
  • H3 第63話 都にて集う / ロードマギアの弟子 - FLIPFLOPs | サンデーうぇぶり
  • H3 [第1話]2年B組 勇者デストロイヤーず/週刊少年ジャンプ新連載試し読み - 空知英秋 | 少年ジャンプ+
  • H3 ユビキタス言語 - kawasima
  • H2 新着エントリー - 世の中
  • H3 米軍が拿捕した貨物船はイランと中国を往復、軍民両用品を積載か…中国が継戦能力支える実態浮かぶ
  • H3 沖縄 辺野古沖転覆事故 玉城知事が現場近くで追悼 | NHKニュース
  • H3 遺跡に木11トン埋めたか サーカス団関係者を書類送検 大阪 | 毎日新聞
  • H3 人気エントリーもどうぞ
  • H2 新着エントリー - 政治と経済
  • H3 「人としてどうなのか」国民・玉木氏、遺族に謝罪なきヘリ基地反対協を疑問視 辺野古転覆
  • H3 Japan loosens arms export rules in break from post-WW2 pacifism
  • H3 【速報】国家情報会議法、今国会で成立の公算大
  • H3 人気エントリーもどうぞ
  • H2 新着エントリー - 暮らし
  • H3 東京駅周辺はランチが高いのでいつも弁当持参していたが『このビル内で勤務している人のみが行けるエリアに安い飲食店がある』と聞きそこに出��
  • H3 サムスン電子とJR東日本が協業 2027年上半期以降発売のGalaxyスマホ(海外版)で「Welcome Suica Mobile」が利用可能に
  • H3 「清潔感」とかいう呪いの言葉を真に受けてる弱男へ
  • H3 人気エントリーもどうぞ
  • H2 新着エントリー - 学び
  • H3 ハトは楽園実験でカオスを生成していた――「ご褒美が確実」でも違う答えを試し続ける - ナゾロジー
  • H3 「愚妻」という言葉は“愚かな妻”、“愚かな私の妻”のどちらを意味するのか議論に「そういえば愚夫とは言わない」
  • H3 チベット仏教ポータル
  • H3 人気エントリーもどうぞ
  • H2 新着エントリー - テクノロジー
  • H3 ユビキタス言語 - kawasima
  • H3 ChatGPTに “一日だけ人間になれるとしたら何をする?” と聞いたら回答が凄く美しくて感動→一方とんでもない回答も
  • H3 さようなら、Amazon誘導広告|広告を見るやきそば
  • H3 人気エントリーもどうぞ
  • H2 新着エントリー - おもしろ
  • H3 広告を見ることで本来なら有料のものを「無料で見させてもらってる」自覚..
  • H3 みなさんもうご存知かと思いますが
  • H3 銀だこの特大サイズたこ焼き『だんらんパック』を独り占めしたい 24個入り、だんらんせずに食べつくす
  • H3 人気エントリーもどうぞ
  • H2 新着エントリー - エンタメ
  • H3 高円寺・無力無善寺がガード下から退去 - 音楽ナタリー
  • H3 初星学園 「ヨルニテ」Official Music Video (HATSUBOSHI GAKUEN - yorunite)
  • H3 オタマトーン Q(キュー) / Otamatone Q
  • H3 人気エントリーもどうぞ
  • H2 新着エントリー - アニメとゲーム
  • H3 第63話 都にて集う / ロードマギアの弟子 - FLIPFLOPs | サンデーうぇぶり
  • H3 [第1話]2年B組 勇者デストロイヤーず/週刊少年ジャンプ新連載試し読み - 空知英秋 | 少年ジャンプ+
  • H3 [第15話]震える右手 - 染谷リキ/羽田豊隆 | 少年ジャンプ+
  • H3 人気エントリーもどうぞ
  • H2 新着エントリー - はてなブログ(総合)
  • H3 「ビスコ保存缶」の味は普通のビスコと同じ?子どもも食べやすい非常食を求めて試してみた - ソレドコ
  • H3 ZEN Study バックエンドの 10年を振り返って - ドワンゴ教育サービス開発者ブログ
  • H3 専業主婦という無収入者の年金問題 - 経済を良くするって、どうすれば
  • H3 人気エントリーもどうぞ
  • H2 新着エントリー - チーム開発
  • H3 週間アクティブユーザー300万人にのぼるCodex、OpenAI Japanの瀬良氏に聞く「開発スタイル」の変化 | gihyo.jp
  • H3 AIとスクラム —— ジェフ・サザーランド博士たちの最新メッセージと、SmartHRの現場で今起きていること - SmartHR Tech Blog
  • H3 【t_wadaさんの持つ現在の答え】AI疲れとの向き合い方 / "ジュニア不要論"の本質 / "エンジニア育成"の解法 / ”バイブコーディング”は正義か悪か / ��
  • H3 人気エントリーもどうぞ
  • H2 おすすめ特集 - AI・機械学習
  • H3 ChatGPTに “一日だけ人間になれるとしたら何をする?” と聞いたら回答が凄く美しくて感動→一方とんでもない回答も
  • H3 OpenAIのパートナーがChatGPT内広告の掲載枠の販売を開始
  • H3 AI 駆動の業務変革手法 :「課題は何ですか?」と聞くのをやめた日 | Amazon Web Services
  • H3 とほほのローカルAI入門 - とほほのWWW入門
  • H2 特集
  • H3 新型コロナウイルス
  • H4 新型コロナ後遺症「ブレーンフォグ」、脳に霧がかかったようにぼーっとする人が増加
  • H4 言った事実を歪曲してとらえる人の話…コロナが爆流行りしていた時、東京のカメラマンに会おうと誘われたが丁重にお断りした結果
  • H4 突然ごめんね。人類はもう終わりなんです
  • H3 政治
  • H4 「人としてどうなのか」国民・玉木氏、遺族に謝罪なきヘリ基地反対協を疑問視 辺野古転覆
  • H4 米軍が拿捕した貨物船はイランと中国を往復、軍民両用品を積載か…中国が継戦能力支える実態浮かぶ
  • H4 Japan loosens arms export rules in break from post-WW2 pacifism
  • H3 カルチャー・ライフスタイル
  • H4 「1970年代の少女マンガはどれも皆恐ろしくレベルが高くて、当時の少年誌青年誌のマンガがみんな子供っぽく見えた」とり・みき先生のポストに漫�
  • H4 ITエンジニアのためのライフスタイルメディア KIKKAKE ITREND
  • H4 ストリートウェア全史:20年にわたるアンダーグラウンドの物語 | HIGHSNOBIETY.JP(ハイスノバイエティ)
  • H3 人文科学
  • H4 ユビキタス言語 - kawasima
  • H4 「愚妻」という言葉は“愚かな妻”、“愚かな私の妻”のどちらを意味するのか議論に「そういえば愚夫とは言わない」
  • H4 小学生の時、家庭科の授業で「塩をひとつまみ」という表現に「大人と子供は違うと思います」と質問した…そこからの先生の対応が教育のお手本��
  • H3 IT
  • H4 ユビキタス言語 - kawasima
  • H4 メモリが高いご時世に苦肉の策。ASRockらがバス幅半分のHUDIMMを開発
  • H4 OpenAIのパートナーがChatGPT内広告の掲載枠の販売を開始
  • H3 まとめ
  • H4 PPFM「神の服」がマルイ系で一番人気の理由|dale
  • H4 似ちゃんねる | 匿名掲示板シミュレーター
  • H4 高校でやった「山月記」って割と核心だよな : 哲学ニュースnwk
  • H3 スポーツ
  • H4 【球団創設90周年】「燃えよドラゴンズ!90th Anniversary天青の竜たちよ」制作のお知らせ:ドラゴンズニュース - 中日ドラゴンズオフィシャルウェブ��
  • H4 具智元らラグビー選手が公取委に訴え リーグ新制度「再考促したい」:朝日新聞
  • H4 東大野球部を30年近くウォッチしてきてる
  • H3 マンガ
  • H4 第63話 都にて集う / ロードマギアの弟子 - FLIPFLOPs | サンデーうぇぶり
  • H4 [第1話]2年B組 勇者デストロイヤーず/週刊少年ジャンプ新連載試し読み - 空知英秋 | 少年ジャンプ+
  • H4 [第15話]震える右手 - 染谷リキ/羽田豊隆 | 少年ジャンプ+
  • H3 キーボードショートカット一覧
  • H2 はてなブックマーク
  • H2 公式Twitter
  • H2 はてなのサービス

Skipping heading levels breaks the document outline. Screen readers may interpret missing levels as structural errors.

Why this matters

Skipping heading levels breaks the document outline — screen-reader users lose track of section nesting.

Learn more

Screen reader users navigate by jumping between headings (H1 → H2 → H3). Skipping (H1 → H3) breaks the sense of hierarchy. Use sequential levels even if you don't like the default styling — restyle with CSS instead. WCAG 1.3.1 (Info and Relationships) treats this as an A failure.

Source: WCAG 2.1 SC 1.3.1 / W3C WAI

Empty headings appear in the document outline but provide no information.

Why this matters

Empty <hN> tags break the document outline — screen-reader users navigating by heading hit dead silence.

Source: WCAG 2.4.6

C
Alt Text Quality
Action
5 of 164 images have issues
REVIEW
5 of 164 images have issues
Critical::
5 image(s) missing alt attribute
Images without alt text are invisible to screen readers.
Info::
155 decorative image(s) correctly marked
Info::
4 image(s) with good alt text
164 images 4 good alt text 155 decorative 5 missing
IssueCount
missing5 image(s)

Images without alt text are invisible to screen readers.

Why this matters

Each image without alt text is a WCAG 1.1.1 failure — invisible to screen-reader users, lost from Google Image Search.

Learn more

WCAG 2.1 Level A requires text alternatives for non-decorative images. Empty alt='' is fine for decorative; meaningful images need descriptive text. Common fixes: CMS audit + bulk add, build-time linter (alt-text-required ESLint rule), CI gate on Lighthouse a11y score.

Source: WCAG 2.1 SC 1.1.1 / WebAIM Million Report

C
Form Accessibility
Action
3 of 7 controls have issues
REVIEW
3 of 7 controls have issues
Critical::
2 control(s) without accessible label
Form controls need a <label>, aria-label, or aria-labelledby for screen readers.
Got: <input type="submit">; <input type="submit">
Warning::
1 control(s) rely on placeholder only
Placeholder text disappears on focus and is not a reliable label.
Got: <input type="search" name="q">
Info::
4 control(s) properly labeled
7 controls
4 labeled
1 placeholder only
2 unlabeled
ControlTypeLabelMethod
#gh-search-icon-checkcheckbox閉じるfor/id
#searchtexttextキーワード・URLを検索aria-label
#weeklyradio週間for/id
#monthlyradio月間for/id
qsearch(キーワード・URLを検索)placeholder only
inputsubmit(none)none
inputsubmit(none)none

Form controls need a <label>, aria-label, or aria-labelledby for screen readers.

<input type="submit">; <input type="submit">

Why this matters

Form controls without labels — assistive tech announces 'edit text' with no context; users can't complete forms.

Source: WCAG 2.1 SC 3.3.2

Placeholder text disappears on focus and is not a reliable label.

<input type="search" name="q">

Why this matters

Placeholder-only labels disappear when the user starts typing — they must remember what the field was for.

Learn more

Placeholders are NOT labels. They vanish on input, fail color contrast checks (most are gray), and don't satisfy WCAG SC 3.3.2. Always use a real <label> alongside (or aria-labelledby).

Source: WCAG 2.1 SC 3.3.2 / Nielsen Norman

C
Favicon & Branding
Action
3 icon(s) detected
REVIEW
3 icon(s) detected
Info::
favicon.ico present at site root
Info::
HTML icon links detected
Info::
Apple touch icon present
favicon.ico Present
PNG Icons Present
Apple Touch Present
SVG Favicon Missing
Manifest Icons Missing
Multiple Sizes Missing
C
Color Contrast (Screenshot)
Action
20 text elements analyzed, 1 fail WCAG AA
REVIEW

Analyzes text contrast against the actual rendered page, including background images, gradients, and overlays that CSS-based tools cannot detect.

19 pass 1 fail WCAG AA
title はてなブックマーク
2.60:1
#000000
on
#505050
needs 4.5:1 (normal text)
16px · top of page (header area)
Show all checked elements (20)
ElementRatioRequiredFGBGResult
h2 特集21.00:13.0:1
#000000
#FFFFFF
Pass
h2 公式Twitter21.00:13.0:1
#000000
#FFFFFF
Pass
h2 はてなのサー…21.00:13.0:1
#000000
#FFFFFF
Pass
h3 人気エントリ…21.00:13.0:1
#000000
#FFFFFF
Pass
h3 人気エントリ…21.00:13.0:1
#000000
#FFFFFF
Pass
h3 人気エントリ…21.00:13.0:1
#000000
#FFFFFF
Pass
h3 人気エントリ…21.00:13.0:1
#000000
#FFFFFF
Pass
h3 人気エントリ…21.00:13.0:1
#000000
#FFFFFF
Pass
h3 人気エントリ…21.00:13.0:1
#000000
#FFFFFF
Pass
h3 人気エントリ…21.00:13.0:1
#000000
#FFFFFF
Pass
h3 人気エントリ…21.00:13.0:1
#000000
#FFFFFF
Pass
h3 人気エントリ…21.00:13.0:1
#000000
#FFFFFF
Pass
h3 人気エントリ…21.00:13.0:1
#000000
#FFFFFF
Pass
h3 キーボードシ…21.00:13.0:1
#000000
#FFFFFF
Pass
title はてなブック…2.60:14.5:1
#000000
#505050
Fail
span close21.00:14.5:1
#000000
#FFFFFF
Pass
p サクサク読め…21.00:14.5:1
#000000
#FFFFFF
Pass
p アプリ限定の…21.00:14.5:1
#000000
#FFFFFF
Pass
div アプリで開く21.00:14.5:1
#000000
#FFFFFF
Pass
span はてなブック…21.00:14.5:1
#000000
#FFFFFF
Pass

Methodology: The top 20 text elements by font size were checked. Background color was sampled from the desktop screenshot using a 5-point pattern. WCAG 2.1 AA requires 4.5:1 for normal text and 3:1 for large text.

C
Lighthouse Accessibility Audits
Action
Score 75/100 — 6 failing, 18 passed
REVIEW
75

Accessibility

These checks highlight opportunities to improve the accessibility of your web app. Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so manual testing is also encouraged.

Names and labels

When a button doesn't have an accessible name, screen readers announce it as "button", making it unusable for users who rely on screen readers. Learn how to make buttons more accessible.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
body.fixed-header > div.drawer-menu > button.drawer-menu-button body.fixed-header > div.drawer-menu > button.drawer-menu-button

Screen reader users rely on frame titles to describe the contents of frames. Learn more about frame titles.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
div#entrylist-ad-rectangle-middle > div#adg-slot-wrapper-entrylist-ad-rectangle-middle > div > iframe div#entrylist-ad-rectangle-middle > div#adg-slot-wrapper-entrylist-ad-rectangle-middle > div > iframe
div#entrylist-ad-rectangle-bottom > div#adg-slot-wrapper-entrylist-ad-rectangle-bottom > div > iframe div#entrylist-ad-rectangle-bottom > div#adg-slot-wrapper-entrylist-ad-rectangle-bottom > div > iframe
div#touch-footer-ad > div#adg-slot-wrapper-touch-footer-ad > div > iframe div#touch-footer-ad > div#adg-slot-wrapper-touch-footer-ad > div > iframe

Link text (and alternate text for images, when used as links) that is discernible, unique, and focusable improves the navigation experience for screen reader users. Learn how to make links accessible.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
header#global-header > div#header > h2#gh-logo > a header#global-header > div#header > h2#gh-logo > a

These are opportunities to improve the semantics of the controls in your application. This may enhance the experience for users of assistive technology, like a screen reader.

Contrast

Low-contrast text is difficult or impossible for many users to read. Learn how to provide sufficient color contrast.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
アプリで開く body.fixed-header > div.link-app-banner > a.link-app-banner-btn > div.link-app-banner-btn-open
ユーザー登録 div.is-guest > ul.gh-service-menu > li > a.gh-guest-register
今週のブクマ数ランキング(2026年4月第3週) div.top-notification > a.top-notification-button > p.top-notification-text > span.top-notification-body
人気 div.navi-page > ul.touch-tab-menu-3column > li.is-current > a
265 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
265 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
96 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
96 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
68 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
68 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
223 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
223 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
73 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
73 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
177 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
177 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
91 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
91 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
210 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
210 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
130 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
130 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
180 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
180 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
8 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
107 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
107 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
164 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
164 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
29 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
29 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
84 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
84 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
52 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
52 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
235 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
235 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
227 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
227 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
73 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
73 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
61 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
61 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
210 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
210 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
86 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
86 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
41 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
41 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
72 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
72 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
67 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
67 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
40 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
40 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
102 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
102 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
216 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
216 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
210 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
210 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
14 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
14 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
108 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
108 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
154 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
154 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
22 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
22 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
人気エントリーをすべて読む div.entrylist-wrapper > section.entrylist-unit > p.entrylist-readmore > a
あとで読むランキング div#container > div.entrylist-wrapper > section.entrylist-unit > h2.entrylist-title
週間 div#container > div.entrylist-wrapper > section.entrylist-unit > label.entrylist-readlater-ranking-tabs-label
1157 users div.entrylist-readlater-ranking-body > div.entrylist-readlater-ranking-body-inner > p.entrylist-readlater-ranking-users-bottom > a.js-keyboard-entry-page-openable
1157 div.entrylist-readlater-ranking-body-inner > p.entrylist-readlater-ranking-users-bottom > a.js-keyboard-entry-page-openable > span
773 users div.entrylist-readlater-ranking-body > div.entrylist-readlater-ranking-body-inner > p.entrylist-readlater-ranking-users-bottom > a.js-keyboard-entry-page-openable
773 div.entrylist-readlater-ranking-body-inner > p.entrylist-readlater-ranking-users-bottom > a.js-keyboard-entry-page-openable > span
763 users div.entrylist-readlater-ranking-body > div.entrylist-readlater-ranking-body-inner > p.entrylist-readlater-ranking-users-bottom > a.js-keyboard-entry-page-openable
763 div.entrylist-readlater-ranking-body-inner > p.entrylist-readlater-ranking-users-bottom > a.js-keyboard-entry-page-openable > span
738 users div.entrylist-readlater-ranking-body > div.entrylist-readlater-ranking-body-inner > p.entrylist-readlater-ranking-users-bottom > a.js-keyboard-entry-page-openable
738 div.entrylist-readlater-ranking-body-inner > p.entrylist-readlater-ranking-users-bottom > a.js-keyboard-entry-page-openable > span
713 users div.entrylist-readlater-ranking-body > div.entrylist-readlater-ranking-body-inner > p.entrylist-readlater-ranking-users-bottom > a.js-keyboard-entry-page-openable
713 div.entrylist-readlater-ranking-body-inner > p.entrylist-readlater-ranking-users-bottom > a.js-keyboard-entry-page-openable > span
653 users div.entrylist-readlater-ranking-body > div.entrylist-readlater-ranking-body-inner > p.entrylist-readlater-ranking-users-bottom > a.js-keyboard-entry-page-openable
653 div.entrylist-readlater-ranking-body-inner > p.entrylist-readlater-ranking-users-bottom > a.js-keyboard-entry-page-openable > span
おすすめ特集「セキュリティ」 div#container > div.entrylist-wrapper > section.entrylist-unit > h2.entrylist-title
139 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
139 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
125 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
125 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
183 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
183 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
269 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
269 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
157 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
157 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
228 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
228 div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable > span
もっと読む div.entrylist-wrapper > section.entrylist-unit > p.entrylist-readmore > a

These are opportunities to improve the legibility of your content.

Best practices

Touch targets with sufficient size and spacing help users who may have difficulty targeting small controls to activate the targets. Learn more about touch targets.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
265 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.bengo4.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
96 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
shonenjumpplus.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
68 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
itrend.kikkakeagent.co.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
223 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
news.web.nhk div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
73 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.nintendo.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
177 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
av.watch.impress.co.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
91 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
bunshun.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
210 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.cnn.co.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
130 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
to-ti.in div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
180 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
anond.hatelabo.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
8 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
soredoko.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
107 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.tokyo-np.co.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
164 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.famitsu.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
29 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.47news.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
84 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
togetter.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
52 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.bbc.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
235 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.ben54.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
227 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
note.com/suthio div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
73 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
posfie.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
61 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
games.toei.co.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
210 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
rookie.shonenjump.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
86 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
forest.watch.impress.co.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
41 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
dragons.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
72 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
type.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
67 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.apple.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
40 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
touda.tohoku.ac.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
102 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
togetter.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
216 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
togetter.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
210 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
note.com/kaze3desu div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
14 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
ebisumart.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
108 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.sankei.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
154 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.itmedia.co.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
22 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
note.com/the_grimm div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
139 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
levtech.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
125 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.docswell.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
183 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
www.jcp.or.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
269 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
qiita.com/miruky div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
157 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
atmarkit.itmedia.co.jp div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a
228 users div.entrylist-contents > div.entrylist-contents-main > span.entrylist-contents-users > a.js-keyboard-entry-page-openable
forbesjapan.com div.entrylist-contents > div.entrylist-contents-main > p.entrylist-contents-domain > a

One main landmark helps screen reader users navigate a web page. Learn more about landmarks.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
html html

These items highlight common accessibility best practices.

Interactive controls are keyboard focusable
Interactive elements indicate their purpose and state
The page has a logical tab order
Visual order on the page follows DOM order
User focus is not accidentally trapped in a region
The user's focus is directed to new content added to the page
HTML5 landmark elements are used to improve navigation
Offscreen content is hidden from assistive technology
Custom controls have associated labels
Custom controls have ARIA roles
`[aria-*]` attributes match their roles
`[aria-hidden="true"]` is not present on the document `<body>`
`[aria-*]` attributes have valid values
`[aria-*]` attributes are valid and not misspelled
Image elements have `[alt]` attributes
`[user-scalable="no"]` is not used in the `<meta name="viewport">` element and the `[maximum-scale]` attribute is not less than 5.
ARIA attributes are used as specified for the element's role
Elements use only permitted ARIA attributes
Document has a `<title>` element
`<html>` element has a `[lang]` attribute
`<html>` element has a valid value for its `[lang]` attribute
Links are distinguishable without relying on color.
Lists contain only `<li>` elements and script supporting elements (`<script>` and `<template>`).
List items (`<li>`) are contained within `<ul>`, `<ol>` or `<menu>` parent elements
No element has a `[tabindex]` value greater than 0
Heading elements appear in a sequentially-descending order
All heading elements contain content.
Identical links have the same purpose.
`[accesskey]` values are unique
`button`, `link`, and `menuitem` elements have accessible names
Deprecated ARIA roles were not used
Elements with `role="dialog"` or `role="alertdialog"` have accessible names.
`[aria-hidden="true"]` elements do not contain focusable descendents
ARIA input fields have accessible names
ARIA `meter` elements have accessible names
ARIA `progressbar` elements have accessible names
`[role]`s have all required `[aria-*]` attributes
Elements with an ARIA `[role]` that require children to contain a specific `[role]` have all required children.
`[role]`s are contained by their required parent element
`[role]` values are valid
Elements with the `role=text` attribute do not have focusable descendents.
ARIA toggle fields have accessible names
ARIA `tooltip` elements have accessible names
ARIA `treeitem` elements have accessible names
The page contains a heading, skip link, or landmark region
`<dl>`'s contain only properly-ordered `<dt>` and `<dd>` groups, `<script>`, `<template>` or `<div>` elements.
Definition list items are wrapped in `<dl>` elements
ARIA IDs are unique
No form fields have multiple labels
`<html>` element has an `[xml:lang]` attribute with the same base language as the `[lang]` attribute.
Input buttons have discernible text.
`<input type="image">` elements have `[alt]` text
Form elements have associated labels
The document does not use `<meta http-equiv="refresh">`
`<object>` elements have alternate text
Select elements have associated label elements.
Skip links are focusable.
Cells in a `<table>` element that use the `[headers]` attribute refer to table cells within the same table.
`<th>` elements and elements with `[role="columnheader"/"rowheader"]` have data cells they describe.
`[lang]` attributes have a valid value
`<video>` elements contain a `<track>` element with `[kind="captions"]`
Tables have different content in the summary attribute and `<caption>`.
Uses ARIA roles only on compatible elements
Image elements do not have `[alt]` attributes that are redundant text.
Elements with visible text labels have matching accessible names.
Tables use `<caption>` instead of cells with the `[colspan]` attribute to indicate a caption.
`<td>` elements in a large `<table>` have one or more table headers.
A
404 Error Page
HTTP 404, custom page
PASS
HTTP 404, custom page
Info::
Correct 404 status code returned
Got: HTTP 404
Info::
Custom styled 404 page
Info::
Navigation links present on 404 page
Info::
Homepage link present on 404 page
Info::
Search form present on 404 page
404 Page Quality Custom 404 Page
Status Code HTTP 404 Page Title はてなブックマーク - 404 Not Found Custom Styling Navigation Homepage Link Search Form
All checks on this page are automated. Results are estimates - run targeted manual reviews when the score affects a release decision.

Send Feedback