タグ

htmlに関するklim0824のブックマーク (153)

  • アクションシートの実装から学ぶ <dialog> 要素を使う時の3つの落とし穴 - Katashin .info

    2023年8月28日HTML,CSS,JavaScript<dialog> 要素が主要なブラウザすべてに実装され、現実的に使えるようになってきましたが、これをそのまま実際の Web アプリで使うには様々なものが足りません。足りないものを自分で実装していくと、分かりづらい挙動があったり、癖のある実装が必要なことがあります。例えば、<dialog> 要素のデフォルトは中央揃えで、コンテンツに合わせたサイズになりますが、これの位置、サイズ調整やアニメーションをする際に落とし穴があります。 記事では、以下のアクションシートのようなモーダルを実装する例を通して、<dialog> 要素を使う時の3つの落とし穴を紹介します。 デフォルトのスタイルが分かりづらい #<dialog> 要素にはデフォルトでいくつかのスタイルが設定されていますが、これまでの HTML 要素のデフォルトスタイルと比べると値が特

    アクションシートの実装から学ぶ <dialog> 要素を使う時の3つの落とし穴 - Katashin .info
  • input[type="number"] のマウスホイール事故を防ぎたい

    Leaner Technologies エンジニアのぐりこ( @glico800 ) です。 今回は何かと話題に上がりがちな input[type="number"] について、個人的に新しい発見があったので簡単にまとめてみました! 背景 ユーザーから入力した値と保存されている値が違うとのお問い合わせがあり、「そんなはずは…。」と思って調べてみたところ、 input[type="number"] の入力後にマウスホイール操作でページ下部にある保存ボタンに移動する際に入力値が意図せず変更されてしまっていたことが発覚。 「これは気づけない!」ということでなんとかしたい。 やりたいこと input[type="number"] でマウスホイール操作による入力値の変更をできないようにする。 前提 今回はPCChrome バージョン: 114.0.5735.198 で表示したケースを想定 実装方針

    input[type="number"] のマウスホイール事故を防ぎたい
  • decoding="async" について詳しく調べてみる

    この記事は2023年7月19日時点の Chrome の最新版 115.0.5790.98 を使って検証しました。今後 Chrome の実装によって挙動が変わる可能性はございます。 はじめに 画像表示のパフォーマンス改善において、「decoding="async" をつけましょう」というのをよく見かけますが、おそらくほとんどの人がその実際の挙動を理解していない、あるいは誤った認識をしていると思います。今回詳しく調べる前の僕も含めて。 loading と decoding の違い 画像のパフォーマンス改善で decoding="async" のほかに、もう一つよく言及されるのが loading="lazy" です。decoding 属性について詳しく見る前に、まずは loading 属性との違いについて理解したほうがいいと思います。 loading とは、ブラウザがどのように画像を読み込むかを

    decoding="async" について詳しく調べてみる
  • 数値入力で input[type="number"]を使ったら、ユーザから問い合わせが増えてしまった話 - Qiita

    数値入力で input[type="number"]を使ったら、ユーザから問い合わせが増えてしまった話HTMLUXTypeScriptReact この記事は SmartHR Advent Calendar 2020 23 日目の記事です。 こんばんは! @diescake です。 今年は、React で「そこそこの規模で、そこそこ機能のフォームアプリケーション」を設計・実装する機会がありました。 技術選定で formik + yup を選んだので、その選定理由と結果を共有しよう! ……そんなふうに考えていた時期が私にもありました。 驚くほど筆が進まず、いつの間にやら当日どころか既に夜になってしまったので tips 的な話に逃げる運びとなりました。ご了承ください。 というわけで、数値入力フォームに何気なく input[type="number"] を利用したら、ユーザから問い合わせが増えてし

    数値入力で input[type="number"]を使ったら、ユーザから問い合わせが増えてしまった話 - Qiita
  • :user-validと:user-invalid擬似クラス | フロントエンドBlog | ミツエーリンクス

    入力フォームがあるページの設計をする際はフロントエンドでもバリデーションを実装することが多くあります。代表的なバリデーションは例えば以下のようなものです。 必須の入力欄に値が入力されていなければエラーとする メールアドレス入力欄に入力された値がメールアドレス形式でなければエラーとする パスワードとして使用できない文字が入力されればエラーとする 入力内容が不適切な場合は、入力欄に装飾を施すために:validと:invalidの2つの擬似クラスを利用してきました。 :validと:invalidは、主にフォームコントロール要素に関連する擬似クラスで、以下のような基準にしたがって各要素の状態がマッチするかどうかを判定します。 required属性付きの入力欄が空でなければ:valid、空であれば:invalid type属性がemailである入力欄に入力された値がメールアドレス形式であれば:va

    :user-validと:user-invalid擬似クラス | フロントエンドBlog | ミツエーリンクス
  • ウェブアクセシビリティの基本:ランドマークロールを理解する

    ページ冒頭におくメインコンテンツ等へジャンプするためのリンクです。tabキーでフォーカスが当たるまでは非表示にしているサイトも多いです。 ランドマークが適切に実装してあれば不要という意見もありますが、2022年の支援技術利用状況調査報告書では「よく使う」「時々使う」を含めると80%になるようです。 region role="region"は、他に適切なランドマークが存在しない場合に使用される一般的なランドマークです。 regionロールにするにはsection要素を使ってマークアップします。 section要素はheader, footer要素の例のように、特定の条件下でロールが変わります。 section要素のデフォルトのロールは「対応するロールなし」であり、ランドマーク要素ではありません。ChromeのアクセシビリティツリーではSectionと表示されますが、これは独自の仕様のようです

    ウェブアクセシビリティの基本:ランドマークロールを理解する
  • そのaria-labelは本当に必要ですか? | アクセシビリティBlog | ミツエーリンクス

    2023年5月31日 そのaria-labelは当に必要ですか? チーフアクセシビリティエンジニア 黒澤 アクセシビリティ対応には複数の方法がありますが、方法によって運用負荷はさまざまです。 私はお客様に、aria-labelを設定するのではなく、画面に表示されているテキストで情報が伝わるようにすると運用負荷を抑えられますよ、という話をすることがあります。 aria-labelは指定をミスするとほぼ確実にアクセシビリティの問題につながりますが、画面に表示されないため、作業漏れが生じやすく、指定ミスに気がつきにくい性質があります。 実際、お客様サイト・サービスの現状把握や競合調査の業務ではaria-labelの作業漏れや指定ミスによるアクセシビリティの問題を多数見てきました。 この記事では実際の問題例をサイト・サービスが特定されないように調整したうえで紹介していきます。 紹介した例はいずれ

    そのaria-labelは本当に必要ですか? | アクセシビリティBlog | ミツエーリンクス
  • HTML で `<select>` 要素を `<hr>` でセパレートできるようになった

    HTML Living Standard の5月2日付けの更新で <select> 要素の子要素として <hr> を含めることができるようになりました。 Proposal: Allow adding separator rows to <select> boxes using <hr> · Issue #3410 · whatwg/html Allow <hr> to be used inside <select> as a separator by annevk · Pull Request #9124 · whatwg/html 4.4.2 The hr element 4.10.7 The select element <select> 要素の中をグループ化する方法としては、従来から <optgroup> 要素が存在しますが、これは label 属性による可視ラベルの設定が必須なため

    HTML で `<select>` 要素を `<hr>` でセパレートできるようになった
  • HTMLにsearch要素が追加されたぞ!

    先週、HTML Living Standardの仕様にsearch要素が追加されました。 ブラウザへの実装はまだ先になると思いますが、検索フォームを実装する時は下記のようなHTMLを使用できるようになります。アクセシビリティの面でも率先して使用していきたいですね。 参考: The search element 2023年3月24日、HTML Standardの仕様にsearch要素が追加されました。 Add the <search> elementhttps://t.co/AlmyHd0qxI — HTML Standard (@htmlstandard) March 24, 2023 追加されたsearch要素は、下記で確認できます。 カテゴリは、フローコンテンツです。 4.4.15 The search element -HTML Standard search要素は、検索またはフィル

    HTMLにsearch要素が追加されたぞ!
  • Code Guide

    Golden rule Enforce these, or your own, agreed upon guidelines at all times. Small or large, call out what’s incorrect. For additions or contributions to this Code Guide, please open an issue on GitHub. Every line of code should appear to be written by a single person, no matter the number of contributors. HTML Syntax Don’t capitalize tags, including the doctype. Use soft tabs with two spaces—they

    Code Guide
  • 【仕様の読み方】HTMLの要素をどうやって学ぶか

    <search>要素がHTML Standardに追加されました。私も初めて出会う要素になるわけですが、とても良い機会なので、私が要素を調べる際にどうやって調べて学んでいるのかを共有したいと思います。これは新しい要素に限らず、既存の要素の調査に応用できると思います。また、初学者はもちろん、マークアップを生業としている方にも参考になると思います。 新要素追加の経緯を調べる まずはHTML StandardのGitHubのPRからスタートするとよいでしょう。議論や更新はGitHubで行われています。たとえば、今回の<search>はAdd the <search> element #7320というPRによって更新されました。 そもそも更新自体のキャッチアップ方法はクローズされたPRを更新順にして確認してもいいですし、更新のみをツイートしている@htmlstandardのTLを確認してもいいと思

    【仕様の読み方】HTMLの要素をどうやって学ぶか
  • `<hgroup>` 要素は今どうなっているのか

    <hgroup> 要素が最初に登場したのは2009年5月のこと(web.archive.org)で、同年8月には W3C HTML5 の仕様書に追加されています。 当時の使い方は <h1> 〜 <h6> 要素のみを組み合わせて小見出しや代替タイトルを示すものでした。 上記のコードでは、サブタイトルは Heading content である <h2> 要素でマークアップされているものの見出しとは見なされず、 <h1> 要素のみが見出しデータとなることが想定されていました。 しかし <hgroup> 要素に対応していない環境ではサブタイトルも含めて見出しが2つ存在する扱いになってしまうという後方互換性の問題があり、他にも解析の難しさなど実効性を疑問視する声があり、2011年には <subline> 要素(www.html5accessibility.com)への置き換えを含む複数の廃止論が出て

  • autocomplete属性のものすごく簡単なメモ - 水底の血

    Autocomplete workshopというミーティングが今年1月に行われたようで、autocomplete方面が盛り上がりつつあるみたいです(whatwg/html#4986)。 このワークショップのノート(Google Doc)が公開されていますけれども、参加者にブラウザーベンダー*1がいるのは当然として、Eコマースのプラットフォーム方面(Shopify、WIX、Checkout.com、Shipper HQ)が参加しているのが興味深いところ。 箇条書きでまとめられているものを雑に引っ張ってみると actocomplete属性の拡張をこれから考えていくことになるが、目下で注目しているのは名前と住所 250サイトについて入力フォームを調べてみた 日を含めたいくつかの国は、オートフィルがうまく機能しない どの情報を1つのフィールドに入力するかについて、サイトごとにまちまち 日では氏

    autocomplete属性のものすごく簡単なメモ - 水底の血
  • 2022年に起きたフロントエンドの変化

    Burikaigi 2023 https://burikaigi.dev/ Twitter https://twitter.com/__sakito__

    2022年に起きたフロントエンドの変化
  • PrettierでHTMLの空要素に"/"が入る(VS Code使用)

    <meta charset="UTF-8" /> <img src="xxx.jpg" alt="xxx" /> なぜHTMLの空要素の最後に"/"が入るのか? Prettierのissue "Add an option to prefer void tags over self closing tags. #5246"、 ざっと読んだところこの仕様の理由は XML(XHTML)との互換性 読みやすさ などであり、設定で変更することはできない。 また別のissue"The formatting of self-closing tags in HTML5 #5641"によると、HTMLのフォーマッティングの開発時にそう決まったからだそう。 そして、オプションの理念ページには Prettier has a few options because of history. But we won’t

    PrettierでHTMLの空要素に"/"が入る(VS Code使用)
  • aタグで#topにリンクするとページ先頭にスクロールするのは仕様 - hogashi.*

    はてなエンジニア Advent Calendar 2022 - Hatena Developer Blog の 2023/1/5 の記事です。 id:hogashi です。 目次 目次 3行 こういうやつ 仕様を眺める 追記1: おまけ 追記2: id="top" な要素があるときは? 3行 a タグの href 属性に #top と書くと、クリックしてページの先頭にスクロールできる、という話をしているのを見て、 それって仕様なんだっけ、と思って調べたところ、 仕様でした こういうやつ クリックしてこのページの先頭にスクロールする <a href="#top">クリックしてこのページの先頭にスクロールする</a> 仕様を眺める MDN の a タグのページにちょろっと書いてあって、 HTML の仕様に定義されているよ、とある <a>: The Anchor element - HTML:

    aタグで#topにリンクするとページ先頭にスクロールするのは仕様 - hogashi.*
  • リンク/ボタン/フォームをより良くするHTML・CSS 17選 - ICS MEDIA

    ウェブサイト制作において見た目がきちんと実装されているのは大事なことですが、コードのちょっとした違いでユーザーの不便につながることもあります。記事では見た目だけでなくユーザーの使い勝手にも気をつけたコーディングテクニックについて解説してます。今回はユーザーが特に使い心地を感じやすいインタラクション部分で、シンプルなHTMLCSSだけでより良くできる17個に絞って紹介します。 下記サンプルでNG例とよい例の両方を紹介しています。実際に違いに触れながら記事を読むと分かりやすいです。 サンプルを別ウインドウで開く コードを確認する 1. divタグをボタンにするのは避けよう 見た目はボタンのようでも、<div>要素で実装したボタンはアクセシビリティの観点からもよくありません。ボタンとしての機能を持つなら<button>要素を用いるのが多くの場面でも有効です。もし、諸事情で<div>要素を用

    リンク/ボタン/フォームをより良くするHTML・CSS 17選 - ICS MEDIA
    klim0824
    klim0824 2022/12/10
    button要素にcursor:pointerが付いてない理由は元々リンクの存在を示すものだから。https://developer.mozilla.org/ja/docs/Web/CSS/cursor インタラクティブな要素に付けるとなるとinputやselectは?みたいな話に
  • You Don't Need ARIA For That - HTMHell

  • 英字の大文字・小文字・小文字+CSS uppercaseの読み上げ確認

  • マークアップのわかり方

    この記事は、2022年10月28日に開催されたDIST.37「マークアップな夜」での発表「マークアップのわかり方」をもとにしたものです。当日は話せなかった内容も大幅に追加しています。 現代における「マークアップ」とはどのような行為なのか。いかにそれと向き合っていけばいいのか。そういったことについて考えてみます。 マークアップの議論においては、「マークアップには正解がない」という意見が決まって出ます。正解がないと言うならば、たいていなんであってもそうです。たとえばCSSJavaScriptの書き方には「正解」があるのかと考えてみると、必ずしもそうではありません。 しかし、ことさらマークアップにおいてこれがよく言われる理由としては、妥当性を判断する基準がわからない、ということでしょう。 というのも、CSSなら望む通りの見た目になればとりあえずOKだし、JavaScriptでも意図した通りの振

    マークアップのわかり方