- 0.0.1. 【アクセシビリティ】 tabindexを使ってタブキーでフォーカス移動できるようにする方法
- 0.0.2. GASを触っての雑多なまとめ(基礎知識)
- 0.0.3. CSS設計について整理してみる① ~なぜCSS設計が必要になったのか~
- 0.0.4. JavaScriptでHTMLパース【DOMParser html】
- 0.0.5. iOSでサービスを見た時にinputタグでのズーム対策
- 0.0.6. ChatGPTを使用して作成したブロック崩しの中を読んでみる。第1回_html編
- 0.0.7. css list-style-position list-style-image 編
- 0.0.8. css リストの作り方 list-style-type プロパティ
- 0.0.9. css 文字の太さ行の高さ文章の配置
- 0.0.10. css 線を引くborderプロパティ
- 0.0.11. css 余白の設定の仕方
- 0.0.12. css 幅と高さの指定 width height プロパティ
- 1. 高さや幅の大きさをこれから指定します
【アクセシビリティ】 tabindexを使ってタブキーでフォーカス移動できるようにする方法
こんにちは!
1年目の小川です。突然ですが、皆さんは**tabindex**を知っていますか?もしくは使っていますか?
今回は、タブキーでのキーボード操作で必要不可欠な**tabindex**についてまとめていきたいと思います。
# こんな人に読んでほしい
* エンジニア
* アクセシビリティに興味がある方
* サイトやアプリのアクセシビリティ対応に重力したい方# tabindexとは?
**tabindex**とは、タブキーで操作するときに、フォーカスが当たるかどうかを指定するときに使うものです。
パソコンを使う人全員がマウスで操作しているわけではなく、キーボード操作のみで画面の情報を収集している人がいます。
そのような人たちは、タブキーを使って、文章や項目を移動させることがあります。
視覚障害があり、スクリーンリーダー(音声読み上げ)を使う人もその一人です。# どうやって使うの?
このtabindexは指定する数字によってフォーカスが当たるかどうかが変わってきます。* tabindex=”0″ 記載した順番にフォーカスが当たる
* tabindex=”1″ 数
GASを触っての雑多なまとめ(基礎知識)
# 基本知識関連
GAS (Google Apps Script) について何も知らなかった私が簡単な開発を通してポイントだなと思った点を挙げております。## 1. GAS の “スプレッドシート” と “シート” という概念
**スプレッドシート” と “シート” という概念があるが別物**:::note
* 「スプレッドシート(Spreadsheet)」 == 「Excel における”ブック”」
* 「シート(Sheet)」 == 「Excel における”シート”」
:::* 私はこの点を把握していなかったため、 `.getActiveSpreadsheet()` のようなメソッドと出会った時に「対象がファイル自体なのかシートなのか」が混乱しました
## 2. Webアプリを公開(デプロイ)できる
こちらの資料が画像が多く分かりやすいですhttps://www2.kobe-u.ac.jp/~tnishida/programming/GAS-02.html
* 「GAS でフロントサイド&バックサイドを実装」「スプレッドシートを DB」として1つの Web アプリ
CSS設計について整理してみる① ~なぜCSS設計が必要になったのか~
# 本シリーズについて
こちらの「CSS設計について整理してみる」シリーズは、完結できるかわかりませんが、少しずつ進められたらと思っております!(私個人の備忘録的な内容です)内容は、「CSS設計完全ガイド(半田惇志 著)」の内容をもとに執筆させていただいております!(詳細や、筆者が伝えたい正確な内容については書籍を読んでいただけるとよいかと思います。)
https://gihyo.jp/book/2020/978-4-297-11173-1
では参りましょう。
# なぜCSS設計が必要なのか
HTMLやXMLでの文書構造の中にスタイリングが当てられており、文書(HTMLやXML)とスタイルが混在しているのは、好ましくなく、また管理も大変であるということからCSSが提唱されたそうです。例)CSSが使用される前の例
“`htmlこちらはCSSが使用される前のスタイルの当て方です。
“`
このようなスタイルをあてると、スタイルを変更したい際には一つずつ修正する必要があるので大変ですよね…
今となっては
JavaScriptでHTMLパース【DOMParser html】
“`js
await fetch(”).then(r=>r.text()).then(html=>new DOMParser().parseFromString(html,’text/html’))
“`例
“`js
await fetch(‘https://example.com’).then(r=>r.text()).then(html=>new DOMParser().parseFromString(html,’text/html’))
“`“`js
const doc = await fetch(‘https://example.com’).then(r=>r.text()).then(html=>new DOMParser().parseFromString(html,’text/html’))
console.log(doc.querySelector(‘a’).href)
“`https://developer.mozilla.org/ja/docs/Web/API/DOMParser
iOSでサービスを見た時にinputタグでのズーム対策
## 原因
– iOSデバイスでサービスを閲覧して16px以下で指定している`input`タグのフォーカス時にズームされてしまうみたいです。
## 対策
– 今回の行った対策として、`meta`タグの`viewport`の中身に`maxmum-scale=1.0`を指定しました。しかし、参考記事にもよるとこの対策ではアクセシビリティ違反になるみたいです。今回、私が行っていた実装の中身を見ると`meta`タグの`content`属性の中身を見ると`width=375`が指定されていました。その副作用なのか、`initial-scale=1.0`がなかったのでそちらを指定したら改善されました。
## 参考記事
https://zenn.dev/rhirayamaaan/articles/f0209ad6574ed4
https://qiita.com/skwbr/items/b285cc312587c73a4812
ChatGPTを使用して作成したブロック崩しの中を読んでみる。第1回_html編
## 初めに
先日、ChatGPTにブロック崩しゲームを作成してもらい、Webページに埋め込むことに成功しました。
機能的には問題なく動いていますが、私自身がHTML、CSS、JavaScriptに関する知識が不足しているため、コードが完全にブラックボックス状態です。
コードを自分で理解し、何がどのように動いているのかを読み取れるようにするために、基礎から学び直すことにしました。HTML: Webページの構造を定義し、どの部分にどんな要素が配置されているかを知る。
CSS: デザインやレイアウトを担当し、見た目をどのように調整しているかを理解する。
JavaScript: ゲームの動作を制御し、どのような条件でボールやブロックが動いているのかを把握する。## 今回の目的
**HTML, CSS, JavaScriptの理解**
**HTML**: Webページの構造を定義し、どの部分にどんな要素が配置されているかを知る。
**CSS**: デザインやレイアウト、見た目をどのように調整しているかを理解する。
**JavaScript**: ゲーム動作の制御、どのような条件でボール
css list-style-position list-style-image 編
# リストマーカーの表示位置を変更する方法
list-style-positionプロパティを使うことでリストマーカーをどの位置に表示するかを指定することができます。
指定方法は2つです
– outside リストマーカーをボックスの外側に表示
– inside リストマーカーをボックスの内側に表示今回作成したコードと見本画像です。わかりやすいようにliタグに背景色をつけています。一目でリストマーカを含むか判断できると思います
“`indexx.html
- リスト1
- リスト2
- リスト3
css リストの作り方 list-style-type プロパティ
# リストのスタイルを指定
リストの項目の先頭に表示されるマークは”リストマーカー”と言われています。
リストマーカーの指定は”list-style-type”を使います。
リストの作成には
– olタグ Ordered List 順序ありのリスト
– ulタグ Unordered List 順序なしのリスト
これら2つを使います。## olタグの使い方
“`index.html
- リスト
- リスト2
- リスト3