タグ

cssに関するsilossowskiのブックマーク (34)

  • CSSのユーティリティクラスと「関心の分離」——いかにしてユーティリティファーストにたどり着いたか(翻訳) - yuhei blog

    Tailwind CSS作者のAdam Wathan氏による「CSS Utility Classes and "Separation of Concerns"」の日語訳です。翻訳に当たって原著者の許諾を得ています。 2021年10月29日に全文再翻訳しました。 この数年の間で、私のCSSの書き方は、非常に「セマンティック」なアプローチから「ファクショナルCSS」と呼ばれるものに変わりました。 この書き方でCSSを書くと、多くの開発者からかなりの反感を買うことがあります。そのため、私がいかにしてここまでたどり着いたかを説明することで、その過程で得た教訓や洞察について共有したいと思います。 第1段階 「セマンティック」なCSS よいCSSのためのベストプラクティスとして、耳にするであろうことのひとつは「関心の分離」です。 考え方としては、HTMLにはコンテンツについての知識のみを含めるべきで

    CSSのユーティリティクラスと「関心の分離」——いかにしてユーティリティファーストにたどり着いたか(翻訳) - yuhei blog
  • 一定時間後にカーソルを非表示にする

    一定時間マウス操作がなかったときに、カーソルを非表示にできるかどうかを試してみました。 サンプルコード まずは一定時間後にカーソルを消すようにしてみます。 CSS html, body { height: 100%; } .cursor-hide { cursor: url(cursor.cur), auto; } JavaScript $(function() { setTimeout(function() { $('body').addClass('cursor-hide'); }, 3000); }); 一定時間後にカーソルを非表示にするデモページ 次に一定時間マウス操作がなかった場合にカーソルを非表示にしてみます。 JavaScript var resizeTimer = null; $(function() { $(window).on('load mousemove', fun

    一定時間後にカーソルを非表示にする
  • CSS accent-color  |  Articles  |  web.dev

    CSS accent-color Stay organized with collections Save and categorize content based on your preferences. Today's HTML form elements are difficult to customize. It feels as if it's a choice between few or no custom styles, or resetting input styles and build it up from scratch. Building it up from scratch ends up being much more work than anticipated. It can also lead to forgotten styles for element

    CSS accent-color  |  Articles  |  web.dev
  • CSS疑似クラスの:read-onlyと:read-writeが仕様通りに実装されることになった

    Life with Web Browser Engine (Gecko, WebKit and etc), Mobile and etc. いろんなやりとりを仕事がらするのだけど、自分のイメージ的には、WebKitは仕様上間違ってるという話を振れば、直してくれることが多くて、BlinkはQAが変な方向に持っていくか、開発者が斜め上の方向の話にしてしまいwontfix扱いになるということが多々ある。 最近やっと直す方向になった、CSS疑似クラスの:read-only / :read-writeがそのパターン。 元々は、Geckoが-moz-プレフィックス付きで実装してたものの一つで、その後、WebKit (確かBlinkに分かれる前) に実装されてた。しかもプレフィックスなしで。実装されたとしても、そもそも仕様として固まっていないものだったので、いろいろと差異が出るので、ちゃんと仕様として書

  • ユーティリティーファーストとTailwind CSSのススメ - Qiita

    Tailwind CSSは結構いいんでないの?というポエムです ユーティリティーファーストって考え方について まず、 ユーティリティークラスが何かということ ユーティリティークラスを使ってHTMLを書いていくということってどういうことか これは、ある程度CSSを書いている人であれば想像できることであろうと思う。 こんな風に、あらかじめユーティリティー的なクラスを用意しーの .align-left { text-align: left; } .align-center { text-align: center; } .align-right { text-align: right; } .align-top { vertical-align: top; } .align-middle { vertical-align: middle; } .align-bottom { vertical-a

    ユーティリティーファーストとTailwind CSSのススメ - Qiita
  • Googleのエンジニアが「ウェブサイトの画像読み込み」を最適化する方法を解説

    ウェブサイトを閲覧していると「画像の読み込みが遅い」という場面に遭遇したことがある人は多いはず。画像はウェブサイトのパフォーマンスを左右する要素のひとつであり、ウェブ開発において取り扱いに注意すべきものです。そんな画像をウェブサイトで扱う際の最適化方法について、GoogleエンジニアであるMalte Ubl氏が解説しています。 Maximally optimizing image loading for the web in 2021 https://www.industrialempathy.com/posts/image-optimizations/ ◆img要素にwidthとheightを指定する アスペクト比を維持したまま画像サイズを変更するには、「style」要素に「max-width: 100%」や「height: auto」と指定しておく手法がよく用いられます。この手法に加

    Googleのエンジニアが「ウェブサイトの画像読み込み」を最適化する方法を解説
  • キーボード操作を意識したHTML/CSSコーディング

    この記事は 「Webアクセシビリティ Advent Calendar 2020」 5日目の記事です。 アクセシビリティ Advent Calenderの記事を寄稿するにあたり、少しの工夫であらゆるユーザーに対して優しいWebサイトを作れるようなHTML/CSSコーディングの方法についてまとめました。より多くの人にとって優しい・使いやすいWebサイトを作ることは訪れてくださるユーザーの方々だけでなく、クライアントにとってもユーザーの機会損失を防ぐことができるので多大なるメリットがあります。(よくコードが適当でもデザインが見えていれば良いって意見を聞くけれどそんなことはない) ただ、アクセシビリティを意識したHTML/CSSコーディングについてのまとめだと内容量が非常に多くなりZennなら記事よりで出したほうがベターになってしまうので、今回は数あるアクセシビリティの視点から「キーボード操作で

    キーボード操作を意識したHTML/CSSコーディング
  • Scrapboxカスタマイズコレクション

    みんなのカスタマイズ / Streamにアクセスするボタン / Winds0314 / インデントレベルをわかりやすくする / 大滝 / okadodo / ページを右/左にスワイプするとカード一覧/新規ページへ飛ぶスクリプト / masonry layout CSS / カードのタイトルが文と一致するとき非表示にする / Twitterからインポート / Dark Theme CSS / ko

    Scrapboxカスタマイズコレクション
  • 現代開発者のためのCSS基礎技術 - Qiita

    ウェブアプリケーション開発における、現代的なCSSの基礎技術についてまとめました。 ちまたには「CSSとは何か」を学ぶ教材はたくさんあっても、「CSSをどうやってうまく使うか」についてはあまり詳しく触れられません。 仕様をたくさん記憶したところで、いつになっても開発力はあがらないのです。 記事は「CSSをうまく使う技術」に焦点をあてて、実際に現代的なウェブアプリケーションに求められるレベルのCSSを書くための知識を紹介します。 特に プログラミング経験はあるもののウェブフロントエンドの経験が浅い方 初級レベルのCSSはある程度理解したものの、次にどうしたらいいかわからない方 にお勧めです。 プロローグ CSSの書き方は一通りではありません。 好きな書き方を自由に選ぶことができます。 これは一見すると良いことですが、裏を返すと最適ではない書き方がたくさんあるということです。 この場において

    現代開発者のためのCSS基礎技術 - Qiita
  • 画像による Layout Shift が無くなる Web がやって来る - mizdra's blog

    はじめに Web では古来より <img> タグを用いて画像を読み込んでいました. しかし <img> タグにはアスペクト比に関する情報を埋め込むための属性が用意されていません. そのため, ブラウザが画像をネットワークから fetch して読み込みが完了するまで, レスポンシブな img 要素の寸法を決定できず, ページにガタツキ (Layout Shift) が生じる問題がありました. この問題を解決するため以前より, アスペクト比を埋め込むための新たな属性の導入が提案されていました. しかし最近議論に動きがあり, 既存の属性を利用する方法が提案され, ブラウザに実装され始めています. ここでは問題の背景, 提案と議論の変遷, そして開発者が取るべき対応について紹介します. はじめに img タグと Layout Shift intrinsicsize 属性 intrinsicsize

    画像による Layout Shift が無くなる Web がやって来る - mizdra's blog
  • CSS設計・Sassディレクトリ管理の標準化(CROCSS) - Qiita

    はじめに HTML+CSSコーディングにおいて、Sass管理ディレクトリを標準化する方法を紹介します。 CSS設計は、サイト種別やプロジェクト規模、分業の有無や人数によっても最適解が異なります。 この仕組みは、様々な設計を同じロジックで受け入れることによって、CSSコードの管理効率を画一的に最大化する狙いのものです。 コーポレート・ポータル・ブログ・EC・LP・管理画面…など、様々な種別のサイトのCSSを、同じ仕組みで設計して管理できるようになります。 前提事項など SassなどのCSSプリプロセッサの使用を前提とします。 記事の一部は、後で見られるよう別記事として切り出しています。(📝のマークのもの) この記事は標準化ノウハウ公開の一環として書いています。 仕組みの概要や前提事項などについては「UltimateCoding 概要・前提事項」のエントリをご確認ください。 セクション一覧

    CSS設計・Sassディレクトリ管理の標準化(CROCSS) - Qiita
  • 1段上のCSS設計・コーディングの概念図(HCDCモデル図) - Qiita

    はじめに HTMLCSSコーディングにおいて、「どのように要素を特定してスタイリングするのか」というCSS設計上の課題に対し、「ひとつ上の視点で思考できる概念図」を紹介します。 この図を用いることで、3種類の異なるスタイリングアプローチ(OOCSS方式 / 包括要素基点方式 / BEM方式)の質を一度に俯瞰できるため、全てを同じ枠の中で捉えられます。そして、最終的には種別や規模の異なるサイトやプロジェクトに対し、同じメソッドを使ってそれぞれ最適な設計がおこなえるようになります。 ※この記事は標準化ノウハウ公開の一環として書いています。 仕組みの概要や前提事項などについては「UltimateCoding 概要・前提事項」のエントリをご確認ください。 経緯 / 制作者中心のデータ分類 そもそもですが、HTMLCSSは目的も仕様も異なる言語です。 HTML+CSSコーディングを一般的な視点

    1段上のCSS設計・コーディングの概念図(HCDCモデル図) - Qiita
  • HTML+CSSコーディングの言語化 - Qiita

    はじめに HTMLCSSコーディングにおける制作者の思考や判断、アプローチ、コード化に至るまでの流れなどを分解し、コードの状態なども含めてそれぞれを短い言葉で言語化しました。 以下のような効果が期待できます。 HTMLCSSを使っておこなってきた事を客観視・再認識できる 始原的な動機を把握することで、手法を別の視点で捉えられるようになる 認識合わせや熟練度確認に利用し、制作時のコミュニケーションを円滑にする 場合によっては、ぼんやりと捉えていたことや、詰まりやすかったポイントなどがハッキリと認識できるようになるかもしれません。 言語化の概要 まずは、全体像が分かる概要図を掲載します。 この記事は、以下のステップと各項目について順に説明するものになります。 前提事項・環境について 言語化するにあたって前提となる考え方や環境について記載します。 HTMLCSSの役割 HTML → データ

    HTML+CSSコーディングの言語化 - Qiita
  • font-familyについて本気で考えてみた - Qiita

    今年はmacOSのアップデートによりヒラギノが動かなくなったり、 来年初頭にはWindows7がサポート終了、Edgeのブラウザエンジン変更など、 エンドユーザーの環境を考えなければならない節目の時です。 そこでいつもコピペで済ましているfont-familyについて1から考え直してみます。 全部読もうとしている人はスクロールバーを見てから考えてください。 結果 コピペユーザーのために先に結果を記載します。 ブログ等に転載する場合はこのページのURLぐらい貼ってください。 @font-face { font-family: "Original Yu Gothic"; src: local("Yu Gothic Medium"); font-weight: 100; } @font-face { font-family: "Original Yu Gothic"; src: local("Y

    font-familyについて本気で考えてみた - Qiita
  • Tailwind CSSという風と共に走るフロントエンド開発 - メドピア開発者ブログ

    10km40分切りが2020年の目標、メドピア長距離部の小宮山です。 みなさんTailwind CSSはご存知でしょうか。tailwindとは「追い風」を意味します。最高に気持ちよく走れるコンディションですね。 目次 サービス概要 技術概要 Tailwind CSSとは何か HTMLCSS HTMLCSSとコンポーネント コンポーネントと雑なセレクタ コンポーネントとインラインスタイル Tailwind CSSがもたらしたもの まとめ サービス概要 まずは今回新たに立ち上げたサービスの紹介です。 「MedPeerスポット×リクルートメディカルキャリア」という医師向けスポット求人マッチングサービス(以下、サービス)が11月にリリースされました。 medpeer.co.jp ログインや応募などサービスのコアな部分はMedPeer医師会員限定になってしまいますが、サイトの雰囲気自体は非会員

    Tailwind CSSという風と共に走るフロントエンド開発 - メドピア開発者ブログ
  • Windowsを心配するのを止めてfont-familyにsans-serifとだけ指定するようにしました

    私は font-family には総称ファミリを設定するべきだと前から思っていました. グローバルな空間で明朝体ではなくゴシック体を使うように設定するには とだけ指定するのが望ましく, 何かをごちゃごちゃ指定するべきではないと思っていました. 何故ならばユーザは表示したいフォントをそれぞれOSやブラウザに指定しているはずで, それを上書きしてしまうのは行儀が悪いからです. 総称ファミリであるsans-serifが設定されていればユーザはブラウザの設定などで自分の好きなフォントを設定することが出来ます. 自分自身ちゃんとブラウザのフォントは設定しているのに, webサイトの指定でfallback用にインストールしてあるフォントなどが使われると不快な思いをします. しかしこれまで私はbootstrapのデフォルトフォント設定に以下のような指定をしていました. $font-family-sans

    Windowsを心配するのを止めてfont-familyにsans-serifとだけ指定するようにしました
  • フロントエンドのプロ直伝! CSS余白設定の三原則(+線の引き方) - Qiita

    前置き CSSでの余白の取り方について、後輩に「margin-topとmargin-bottomどっち派ですか?」と聞かれたので、 回答内容を記事として残します。 昔、会社のOJTで学んだことの共有となります。 1. 基的にmargin-topを使う 理由としては、そちらの方が後々調節しやすいからです。 また、後述の優先度で設定していけば、margin-bottomの出番はほぼなくなります。 2. どうしても無理な場合にbottomを使う margin-bottomは他の方法ではどうしても設定が無理なケースのみ使いましょう。 3. 隣接セレクタをうまく使うとトルツメしやすい 特定の要素同士が並んだ時だけマージンを取る=余白の打ち消し設定が不要になります。 設定の優先度 要素がいくらネストしても下記の優先度は変わりません。 この優先度で余白を設定していけば、margin-bottomの出番

    フロントエンドのプロ直伝! CSS余白設定の三原則(+線の引き方) - Qiita
  • PuppeteerでいらないCSSを消す

    @pirosikick の発表資料です。 https://mentaico-js.connpass.com/event/132416/

    PuppeteerでいらないCSSを消す
  • will-changeで目指す60fpsのぬるぬるCSSアニメーション - Qiita

    こんにちは、CSSVue.jsでアニメーション使いまくりのポートフォリオ作ったり、シューティングゲーム作ったりして遊んでいるゆきです。 今日はCSSアニメーションで無茶しすぎてMacBookがカイロになった反省からの「負荷をかけずにぬるぬるのCSSアニメーションを実現するための試行錯誤」の顛末をまとめます。それでもCSSでアニメーションしたいんだ 今回の目的とサンプルケース この記事では、WebでCSSを使ってゲームやアート的な表現にゴリゴリのアニメーションを使いたい!というケースを想定します。 全体を通してCSSのwill-changeプロパティを使ったGPUレンダリングによる最適化のお話です。will-changeってなに?って方はこの後でてくる参考記事リストを先に見ていただくのが良いと思います。 https://css-anime.firebaseapp.com/ 今回検証するアニ

    will-changeで目指す60fpsのぬるぬるCSSアニメーション - Qiita
  • ブラウザレンダリング入門〜知ることで見える世界〜 - Qiita

    はじめに 『レンダリングの仕組みなんて知らなくても、ブラウザが勝手にやってくれるじゃん!』 当時駆け出しのエンジニアだった私はそう思っていました。 実際、当時の私はレンダリングの『レ』の字も知りませんでしたが、特に業務上で問題はありませんでした。 しかし、その時は突然訪れました。 クライアントの要望でアニメーションを多彩に取り入れた案件を実装した際に、テスト段階で一部ブラウザ(S○f○ri、E○ge)でアニメーションがひどい状況になっていることが発覚しました。 (開発中はChromeで確認を行っており、Chromeでは特に問題はなかったので発覚が遅れました。) それからは、狂ったようにパフォーマンスの改善方法をググり、修正する日々が続きました。(最終的には、なんとかマルチブラウザでの動作も担保し、納品まで完了しました。) その案件が落ち着いた後、改めて自分の調べたことを振り返ると、局所的な

    ブラウザレンダリング入門〜知ることで見える世界〜 - Qiita