Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
おすすめの技術書LT - vol.4
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
takaokamenoue
July 14, 2022
300
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
おすすめの技術書LT - vol.4
takaokamenoue
July 14, 2022
More Decks by takaokamenoue
See All by takaokamenoue
CSS Masonry レイアウトの 今までとこれから
totocalcio
1
1.1k
フロントエンドLT会 - vol.4
totocalcio
1
6.6k
おすすめの技術書LT
totocalcio
0
21k
Featured
See All Featured
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
The Language of Interfaces
destraynor
162
27k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
How to make the Groovebox
asonas
2
2.5k
It's Worth the Effort
3n
188
29k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
460
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
410
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
1.4k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
59k
Darren the Foodie - Storyboard
khoart
PRO
4
4k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Transcript
書籍読了後の変化 おすすめの技術書 LT会 - vol.4 株式会社ラクス 亀ノ上孝雄 2022 年 7
月 14 日
目次 ・自己紹介 ・HTML解体新書について ・読了後の変化 ・アクセシビリティ ・解決策 ・補足説明 ・まとめ
自己紹介 亀ノ上孝雄 株式会社ラクス 2021年4月入社 マークアップエンジニア →フロントエンドエンジニア 趣味:動画鑑賞、学習
HTML解体新書読みました
▪タイトル HTML解体新書 仕様から紐解く本格入門 ▪難易度 中級者(初級者) ▪こんな方におすすめ • HTMLのタグはわかってきた気が する •
仕様はあまり見たことがない • アクセシビリティにも興味がある
感想
感想 HTMLへのより深い理解を得ることができた (特にアクセシビリティ)
感想 HTMLへのより深い理解を得ることができた (特にアクセシビリティ) • 各要素に対して定義からアクセシビリティについてまで詳細に扱って いる • アクセシビリティは普段あまり意識せず実装しているので、非常に参 考になった •
WAI-ARIAについても解説がある。しかしARIAは他の要素へ影響を 与えたり、特定の要素にしか使えなかったり複雑なので今後の課題 となった。
やっぱり仕様は読まなきゃ
読了後の変化 • 今まで以上に仕様について気にするようになった • 都度仕様を確認する習慣がついた • アクセシビリティについても考慮するようになった
読了後の変化 • 今まで以上に仕様について気にするようになった • 都度仕様を確認する習慣がついた • アクセシビリティについても考慮するようになった そんなある日のこと・・・
list-style-type : none
list-style-type : none ol / ul の discを消す • ←まさにこれを消す
• 呼吸レベルで何も考えずに使っていた • きっとみんな使ってる
でもそれって・・・
でもそれって・・・ アクセシビリティに影響が あるって知っていました??
私は知りませんでした
概要 list-style-type: noneを使うとWebkitブラウザはlistのセマンティクスを削除する
概要 つまり? • VoiceOverきかなくなる。 • スクリーンリーダーで 読まなくなる list-style-type: noneを使うとWebkitブラウザはlistのセマンティクスを削除する
概要 つまり? • VoiceOverきかなくなる。 • スクリーンリーダーで 読まなくなる なぜ? • バグではなく仕様
• VoiceOverユーザーから「リ ストの開始」「リストの終了」 のアナウンスが多すぎるとの 報告 list-style-type: noneを使うとWebkitブラウザはlistのセマンティクスを削除する
解決策
解決策 WAI-ARIA 明示的にlistであることをroleに示 す <ul role="list">
解決策 WAI-ARIA 明示的にlistであることをroleに示 す <ul role="list"> 魔法 ZWSP(幅0のスペース)を擬似要 素で追加するとなぜかセマンティク スが蘇生する
li::before { content: "\200B"; }
解決策 WAI-ARIA role属性によって明示的にlistであ ることを示す <ul role="list"> 魔法 ZWSP(幅0のスペース)を擬似要 素で追加するとなぜかセマンティク スが蘇生する
li::before { content: "\200B"; } 補足
解決策 WAI-ARIA role属性によって明示的にlistであ ることを示す <ul role="list"> 魔法 ZWSP(幅0のスペース)を擬似要 素で追加するとなぜかセマンティク スが蘇生する
li::before { content: "\200B"; } 暗黙のロール • <button role=”button”>など • マークアップを冗長にするため不要 • <ul role=”list”>も同様に本来は不要 補足
解決策 WAI-ARIA role属性によって明示的にlistであ ることを示す <ul role="list"> 魔法 ZWSP(幅0のスペース)を擬似要 素で追加するとなぜかセマンティク スが蘇生する
li::before { content: "\200B"; } 暗黙のロール • <button role=”button”>など • マークアップを冗長にするため不要 • <ul role=”list”>も同様に本来は不要 補足 リストマーカーが削除され、 セマンティクスが抑制された場合、 ロールを復元するために ulタグにrole=”list”を使用
解決策 WAI-ARIA role属性によって明示的にlistであ ることを示す <ul role="list"> 魔法 ZWSP(幅0のスペース)を擬似要 素で追加するとなぜかセマンティク スが蘇生する
li::before { content: "\200B"; } 暗黙のロール • <button role=”button”>など • マークアップを冗長にするため不要 • <ul role=”list”>も同様に本来は不要 補足 - リストマーカーが削除され、 - セマンティクスが抑制された場合、 - ロールを復元するために - ulタグにrole=”list”を使用
まとめ • HTML解体新書を読んで、今まで知らなかったタグについて 知ることができた。 • 何も考えずに使っていたタグについても、仕様について新し い知識を得ることができた。 • アクセシビリティについて興味を持つことができた •
興味を持つようになったことで、実装に対する意識も変化し た。
やっぱり仕様は読まなきゃ (2回目)
参考 - https://gerardkcohen.me/writing/2017/voiceover-list-style-type.html - https://www.scottohara.me/blog/2019/01/12/lists-and-safari.html - https://bugs.webkit.org/show_bug.cgi?id=170179 - https://momdo.github.io/html-aria/
ご清聴ありがとうございました