HTMLに関するics-mediaのブックマーク (6)

  • スクロール完了をawaitで待てる! 進化したJSのスクロール関数 - ICS MEDIA

    JavaScriptには、scrollTo()メソッドやscrollBy()メソッドなど、目的のところまでスクロールする関数があります。これらの関数と一緒に使われることが多いのがbehaviorプロパティに"smooth"を設定して、目的地まで滑らかにアニメーションさせる方法です。たとえば目次をクリックしたら該当の章までスムーズにスクロールさせるなど、使ったことがある方も多いと思います。 スムーズスクロールの課題として一番大きなものは、スクロールの完了後に行う処理が書きづらいことです。Chrome・Edge 150から使えるプログラマティック・スクロール・プロミスでは、今までscrollendイベントの監視やsetTimeout()メソッドなどで検知していたスクロール完了を、Promiseを使って制御できるようになります。 スクロール完了をPromiseであつかう Promiseは非同期の

    スクロール完了をawaitで待てる! 進化したJSのスクロール関数 - ICS MEDIA
    ics-media
    ics-media 2026/07/03
    従来から存在したscrollBy'()やscrollIntoView()がPromiseを返すようになったという変更。こういうウェブの機能変更は珍しい出来事です。
  • HTMLのセマンティクスを意識して、壊れにくいテストコードを書こう - ICS MEDIA

    AIがアプリケーションコードもテストコードも書く時代、UIを操作するE2Eテストは「通るか」だけでなく、「何を操作しているかが読み取れるか」という視点も重要です。 AIが生成したUIのテストコードは一見それらしく動いても、順番や見た目のテキストに依存していて、あとから読むと意図がわからないことがあります。 // 0番目の「削除する」をクリックする await page.getByText('削除する').nth(0).click(); たとえば、上のテストコードは、nth(0)で0番目の「削除する」を順番で決め打ちしています。今は通っていても、ボタンが増えたり順番が変わったりすると意図しない要素を操作する可能性があります。 記事では、Playwrightで要素を取得する方法(ロケーター)を、「順番」や「文字列だけ」ではなく、ユーザーが認識する役割・名前・領域に沿って指定する方法を紹介しま

    HTMLのセマンティクスを意識して、壊れにくいテストコードを書こう - ICS MEDIA
    ics-media
    ics-media 2026/06/25
    適切なロールでウェブページを組み、getByRole('button', {name: '削除する'}) でUIテストのコードを書けるようにしよう、という内容を公開しました
  • dialogタグで面倒が減る! 見直したいハンバーガーメニューの作り方 - ICS MEDIA

    ハンバーガーメニューは、スマートフォン向けウェブサイトでよく使われるナビゲーションUIです。ヘッダーの[≡]ボタンを押すと、リンクの一覧が、現在のページの上に重なって表示されます。 横三線のボタンが、パン(バンズ)とお肉(パティ)を挟む🍔のように見えることから、慣習的に「ハンバーガーメニュー」と呼ばれています。 新旧さまざまな作り方がありますが、今はHTMLの<dialog>タグで作るのがオススメです! 2020年代以降に登場した新しめのCSSと組み合わせることで、スマートに作れます。 古い作り方を避けたい理由 ハンバーガーメニューは2000年代後半のスマートフォンが出始めた頃よりウェブサイトで流行ってきました。旧式の作り方にどんな課題があったのかを振り返りましょう。もしかしたら「知らずに使っていた😨」といったケースもあるかもしれません。 はりぼてのdivタグ ハンバーガーメニューの

    dialogタグで面倒が減る! 見直したいハンバーガーメニューの作り方 - ICS MEDIA
  • これがフロントエンドで話題になった記事! ICS MEDIAの2025年 - ICS MEDIA

    ICSはフロントエンド専門のウェブ制作会社で、オウンドメディアとして技術情報発信サイト「ICS MEDIA」を運用しています。このサイトは開設から12年目をむかえました。年末恒例となりますが、今年の記事のアクセス数を公開します。 今年はCSSの進化が目立ちました。今年はどの記事がもっとも読まれたのでしょうか? 今年執筆した記事で上位10記事をピックアップします。 1位 : text-boxの使い方 CSSでテキストの上下余白が調整可能に!text-box-trimの使い方 19,761 PV text-box-trim / text-box-edgeを取り上げ、テキスト要素の上下スペース(いわゆるハーフ・レディング)の扱いを整理しながら、実装にどう役立つかを具体例つきで解説しています。多くの方々が普段のウェブ制作で困っていたことであり、解決方法が得られたことで大きな反響がありました。 読者

    これがフロントエンドで話題になった記事! ICS MEDIAの2025年 - ICS MEDIA
    ics-media
    ics-media 2025/12/29
    今年のフロントエンドでアクセス数の多かった記事をまとめました。
  • CSSアンカーポジショニング入門〜anchor()・anchor-size()の使い方〜 - ICS MEDIA

    CSS Anchor Positioning(CSSアンカー位置指定)は、要素の位置やサイズを「特定の要素(アンカー)」を基準にコントロールできる仕組みです。その中心となるanchor()関数では位置を、anchor-size()関数ではサイズを相対的に指定できます。主要ブラウザでも対応が進み、2026年中には全モダンブラウザで使用可能になるでしょう。 この記事では、anchor()/anchor-size()関数を使った具体的な表現手法や活用テクニックを、デモとともに紹介します。 1. 相対的な位置指定(anchor()関数) anchor()関数を使うと、要素同士の相対的な位置関係をもとにレイアウトを指定できます。別の要素をアンカーとして登録し、その位置を参照して座標を決めるイメージです。 引数には、アンカー要素のどの位置を参照するかの値(top、left、center、start、パ

    CSSアンカーポジショニング入門〜anchor()・anchor-size()の使い方〜 - ICS MEDIA
    ics-media
    ics-media 2025/12/16
    アンカーポジショニングは、DOM構造的に離れた要素の位置を同期するのに役立ちます。ツールチップやホバーカードなど、多くのUIで役立ちます。
  • ウェブの新機能はいつまで待てば実践投入できるか - ICS MEDIA

    ウェブ開発に関するHTMLCSSJavaScriptの新機能は次々と登場します。このような新機能を紹介したブログ記事やSNSを見たことがあるかもしれません。新機能は、開発コストやユーザーエクスペリエンスを向上させるために重要ですが、ブラウザ側の対応状況により、すぐには導入できない場合もあります。記事では、ウェブの新機能を実践投入するまでのプロセスとそのタイムラインについて考察します。 結論:新機能を取り入れる際の対応ブラウザの指針 まずは結論として、新機能を導入する際は次の3つの指針で判断していくと良いと考えます。 最新機能を取り入れつつメジャーなゾーンをカバーする:Chrome・Edgeの最新3バージョン、Safariの最新2世代のメジャーバージョン 最新機能を取り入れつつも、より幅広い対応を考える:上記に加えFirefoxの最新3バージョンとSafariの最新3世代のメジャーバー

    ウェブの新機能はいつまで待てば実践投入できるか - ICS MEDIA
    ics-media
    ics-media 2025/04/23
    ウェブ技術の投入できるタイミングについて、国内のブラウザシェアをまとめました。Firefoxに限らず、ユーザーの望むブラウザや環境で閲覧できるというのはアクセシビリティの観点からも大事なことです。
  • 1