タグ

cssに関するalcusのブックマーク (193)

  • Utility-first CSS(Tailwind CSS)が合理的であることの説明と、CSSによるUI開発小史

    目次 CSS小史 SUIT CSS - 命名規約ベースのCSS方法論 styled-components - CSS in JS Tailwind CSS - Utility-first CSS なぜインラインスタイルではダメなのか まとめ タイムライン 参考リンク CSS小史 CSSでアプリのUIを実装するための手法は、これまでいくかの変遷を辿ってきた。 はるか昔、CSSが生まれて間もないころには、関心の分離という文脈から、FONT要素などの物理タグはよくないものとされ、 コンテンツ(HTML)とスタイル(CSS)をきっちりと分離することが奨励されはじめた。 そこでは、HTMLはあくまで文書であり、CSSのクラスセレクタという接点でコンテンツと見た目が隔離されることで、それらは別世界のものとして管理されていた。 また、大規模サービス開発においていかにCSSを管理するかという問題意識はまだ

    Utility-first CSS(Tailwind CSS)が合理的であることの説明と、CSSによるUI開発小史
    alcus
    alcus 2024/03/15
  • CSSの知っておくと便利なフクロウセレクタの使い方! 要素を積み重ねる時のマージンにかなり便利です

    兄弟要素を積み重ねる時、垂直マージンをどのように実装していますか? 要素を積み重ねる時のマージンは、フクロウセレクタ(* + *)を使うと簡単です。さらに、>を追加することで、マージンが再帰的に与えられるのを防ぎます。たった3行のCSSで積み重ねる時のマージンを管理できる、フクロウセレクタの効果的な使い方を紹介します。 このテクニックは、テキストとテキスト、見出し直後のテキスト、流動的なフォントサイズにも非常に効果的です。 My favourite 3 lines of CSS by Andy Bell 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに CSSのカスタムプロパティでのフォールバック値の仕組み The Stackではなく.flowを使うのなぜですか? gapではなく、marginを使うのなぜですか? 終わり

    CSSの知っておくと便利なフクロウセレクタの使い方! 要素を積み重ねる時のマージンにかなり便利です
    alcus
    alcus 2023/02/28
  • 【CSS】displayプロパティに2つ値が入るってマジ!? どゆこと!? - Qiita

    はじめに みなさんは、CSSのdisplayプロパティを知っていますか? CSSを扱う上で、一番使うのがdisplayプロパティではないのでしょうか? 最近では、display: flex; や display: grid; が追加され、いろいろなレイアウトが作りやすくなったのは、記憶に新しいかと思います。 そんな中で、CSS Display Module Level 3で、displayプロパティに2つの値を入れることができるようになることがわかりました。 ※ まだ、Firefox 70以上・Safari 15以上でのみ再現できます。(2022年1月20日) そのため、この記事では、displayプロパティに2つの値を入れられることについて解説しようと思います。 背景 まずは、displayプロパティに2つの値を入れられるようにした背景について解説します。 最近displayプロパティに

    【CSS】displayプロパティに2つ値が入るってマジ!? どゆこと!? - Qiita
    alcus
    alcus 2023/01/20
  • モダンCSSによる絶対配置(position: absolute;)の削減

    テキストを画像の上に配置、タグを重ねたい、ヒーローセクションで画像の上にコンテンツを配置、画像のアスペクト比を維持させたい時など、CSSの絶対配置(position: absolute;)を使用することがあります。もちろん、それでうまくいく時はありますが、なんらかの制約があったり、テキストが長いと崩れたりします。 position: absolute;が必要だと思われていた実装で、使用しなくても実装できるモダンCSSのテクニックを紹介します。 Less Absolute Positioning With Modern CSS by Ahmad Shadeed はじめに ケース1: カードのオーバーレイ ケース2: カードのタグ ケース3: ヒーローセクション ケース4: display: contents; ケース5: カードアイテムの並べ替え ケース6: 中央寄せ ケース7: 画像のアス

    モダンCSSによる絶対配置(position: absolute;)の削減
  • CSSのみのボタンデザイン – 現場で使ってきたボタンアイデア30選 | BUILD Journal

    Web制作の現場でよく使ってきたCSSのみで実装するボタンデザインを紹介します。hover時のスタイルも合わせて公開しているので、そのまま利用することができます。主に自分用のデザインストックとして投稿しますが皆さんも使えるボタンデザインがあるかもしれません。ぜひあなたの現場でもご活用ください。 背景色と矢印のボタン HTML<div class="button01"> <a href="">ボタンデザイン</a> </div> CSS.button01 a { display: flex; justify-content: space-between; align-items: center; margin: 0 auto; padding: 1em 2em; width: 300px; color: #333; font-size: 18px; font-weight: 700; bac

    CSSのみのボタンデザイン – 現場で使ってきたボタンアイデア30選 | BUILD Journal
  • 長年触れられてなかった ABEMA の番組表を content-visibility でパフォーマンス改善した話 | CyberAgent Developers Blog

    はじめに こんにちは、ABEMA で Web フロントエンドエンジニアをしています、20新卒の坂上です。 ABEMA には、各日付ごと、各チャンネルごとにどの時間帯にどの番組が放送されているかを確認できる 番組表 機能が存在します。 この番組表は開局当初から存在するものの、現在までそれほど変わりはない機能です。 そのため、実装にも手が加えられておらず、数年前の React のコードがそのまま残っている箇所も存在していました。 それゆえ、コードリーディングがしづらく、実装の詳細や仕様に関して詳しく知っている人がいないという状態から、番組表のパフォーマンスが芳しくないことは課題として上がっていましたが手をつけられていない状態でした。 その番組表に対して、再レンダリングの抑制と新しく提案された CSS プロパティである content-visibility を導入しました。 結果としては、Tim

    長年触れられてなかった ABEMA の番組表を content-visibility でパフォーマンス改善した話 | CyberAgent Developers Blog
  • CSSの新しいプロパティ「content-visibility」レンダリングのパフォーマンスが向上する

    Webページのパフォーマンスを向上させることは、CSSでも可能です。去年の暮れからChromeで利用できるようになったCSSの新しいプロパティで、2021年現在Edge, Operaにもサポートされています。 読み込みパフォーマンスを向上させるために最も効果があるCSSの新しいプロパティcontent-visibilityについて紹介します。 content-visibility: the new CSS property that boosts your rendering performance by Una Kravets, Vladimir Levin 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに content-visibilityのサポート状況 CSS Containmentとは content-visi

    CSSの新しいプロパティ「content-visibility」レンダリングのパフォーマンスが向上する
    alcus
    alcus 2021/02/12
  • 2021年に伸びるCSSプロパティ3選 | フロントエンドBlog | ミツエーリンクス

    ユーザーのアンケート結果からその年のCSSの流行りや動向がわかるThe State of CSS 2020というサイトをご存知でしょうか。 さまざまなCSSプロパティをカテゴライズし、どのくらいのユーザーがそのプロパティを知っているか、使ったことがあるかがまとめられています。 私は、当社のPodcastでもこのState of CSSについてお話ししたのですが、今回は、実際にコードベースで2021年に活躍していくであろう3つのCSSプロパティについてご紹介します。 ※対応ブラウザ状況について、最新の情報については適宜Can I useなどでご確認ください。 backdrop-filter まず1つ目はbackdrop-filterです。State of CSSでは知らないと答えた人が49.9%と全体の半数いました。 このプロパティは、すりガラスのように後ろにあるものが見えづらくなるようなぼ

    2021年に伸びるCSSプロパティ3選 | フロントエンドBlog | ミツエーリンクス
    alcus
    alcus 2021/02/08
  • CSS メディアクエリのチートシート、モバイルファースト用、スマホ・タブレットのデバイス用のメディアクエリ

    WebページでCSSのメディアクエリを使用する際にベースとなるメディアクエリ、モバイルファースト用のメディアクエリ、スマホ・タブレットの主要デバイス用のメディアクエリのチートシートをまとめました。 /*------------------------------------------ Responsive Grid Media Queries - 1280, 1024, 768, 480 1280-1024 - デスクトップ(デフォルトのグリッド) 1024-768 - タブレット横長 768-480 - タブレット縦長 480-less - スマホ --------------------------------------------*/ @media all and (min-width: 1024px) and (max-width: 1280px) { } @media all

    CSS メディアクエリのチートシート、モバイルファースト用、スマホ・タブレットのデバイス用のメディアクエリ
    alcus
    alcus 2021/02/08
  • Chrome 88のここに注目!CSSのaspect-ratioプロパティでアスペクト比が簡単に、別窓はデフォルトでnoopenerに

    Chrome 88が先週リリースされ、aspect-ratioプロパティがサポートされました。 CSSのaspect-ratioプロパティはボックスのアスペクト比を定義でき、画像や動画のアスペクト比を保持して配置したり、黄金比のレイアウトも簡単に実装できます。 拡張機能の新しい仕様「manifest v3」がサポート。Chromeウェブストアにアップロードできます。これにより、安全性、パフォーマンス、プライバシーを向上。 aspect-ratioプロパティのサポート。 非表示ページでJavaScriptタイマーを連鎖発生させている場合の動作を抑制。 target="_blank"があるアンカータグは、デフォルトでrel="noopener"が付いているものとして扱われる。 OSのマウスアクセラレーション機能をPointer LockAPIで無効化可能に。 addEventListenerは

    Chrome 88のここに注目!CSSのaspect-ratioプロパティでアスペクト比が簡単に、別窓はデフォルトでnoopenerに
    alcus
    alcus 2021/01/26
  • CSSにおけるマージンの相殺を徹底解説

    CSSにおけるマージンの相殺は何か、どういう条件で起こり、どのように相殺されるのか、また相殺を回避する方法などを紹介します。 下と上のマージンの相殺は単純ですが、マージン値が異なる場合、入れ子の場合、複数の場合、同方向の場合、負のマージンの場合、パディングやボーダーがある場合など、実装に伴うさまざまな例を解説します。 この記事を読むと、マージンの相殺がどのように機能するかがよく分かるようになり、悩むことはなくなります。 The Rules of Margin Collapse by Josh W. Comeau 下記は各ポイントを意訳したものです。 デモは元記事ではインタラクティブですが、Gifアニメにしています。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに 垂直マージンのみが相殺される 隣接する要素のみが相殺される より大きなマージンが勝つ 入れ子は

    CSSにおけるマージンの相殺を徹底解説
  • scroll-behavior: smooth;によるページ内検索時のスクロールを除外するテクニック

    ページにhtml {scroll-behavior: smooth;}を加えるだけで、簡単にページ内のスクロールのすべてがスムーズになります。一昔前はJavaScriptやjQueryのプラグインで実装していますが、非常に簡単に実装できるようになりました。 「すべてがスムーズになる」弊害が1つあり、ページ内検索時にも適用されてしまいます。複数のキーワードがページ内にある場合は、時間がかかってしまいます。 このページ内検索時を除外して、ページ内にscroll-behavior: smooth;を適用するテクニックを紹介します。 仕様なのか、不具合・バグなのか、いずれにしろ簡単に対応できます。 Fixing Smooth Scrolling with Find-on-Page 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 CSS-

    scroll-behavior: smooth;によるページ内検索時のスクロールを除外するテクニック
  • 2021年のウェブ標準とブラウザ | gihyo.jp

    2021年になりましたね。 矢倉眞隆(myakura)です。ウェブ標準やブラウザに興味のあるウェブ開発者です。gihyo.jpでは2009年に「Web標準とその周辺技術の学び方」という連載をしていました。 今回は昨年の泉水さんに代わり、2021年のウェブ標準やブラウザの動向を占おうと思います。2020年は世界もブラウザもそれなりに大きな出来事がありましたので、2020年の動きをまずおさえ、そのうえで2021年はどうなるのかを考えてみました。 W3Cのプロセス改訂でLiving Standardライクな仕様の改訂が増えていく W3Cは2020年9月に、新しいプロセス文書と特許ポリシーを公開しました。 新しい文書プロセスはW3Cの組織の定義や標準化の流れ、意思決定などについて定めた文書です。ここ数年は毎年更新されていますが、2020年はこれまでと比べて最大級とプレスリリースでもうたわれています

    2021年のウェブ標準とブラウザ | gihyo.jp
    alcus
    alcus 2021/01/05
  • 一番詳しいCSS設計規則BEMのマニュアル - Qiita

    一番詳しい(当社比) この記事は 大体1年くらいBEMを実践した中で溜まった知見的なものをルール・規則・注意点をまとめたマニュアルというかたちにしたもの. BEM初心者でもすぐ実践してもらえそうな感じに詳しくしたつもり. ちなみにBEMの実践というのはRails製Webアプリでの実践. ※注 多分に我流な部分も含まれている. この記事の全てを真似しようとせずに一部のエッセンスのみ取り入れるのもいいかもしれない. BEMとは Block Element Modifierの略で, Block => でかい括り Element => でかい括りの中にいる要素 Modifier => 上記2つの変化球 の3つに分けて考えていくことでCSSを設計・命名していく手法. 基的な考えとか前提とか BEMの中でも特にMindBEMdingと呼ばれている命名法をベースとしている SCSSを使用する 基的に

    一番詳しいCSS設計規則BEMのマニュアル - Qiita
  • CSSとコンポーネント設計に対する考察 - uhyo/blog

    近年のフロントエンド開発にはコンポーネントという概念が付いて回ります。ReactVueAngularといったViewライブラリでは、コンポーネントを定義してそれを組み合わせてアプリを作ります。また、いわゆるWeb Componentsとして知られる仕様群により、ライブラリに依存せずに“コンポーネント”を作ることもできるようになってきています。 コンポーネントは、何らかの機能(あるいは責務)を持った部品です。また、コンポーネントによっては再利用される(アプリ内の複数の箇所から利用される)ことを意図しているものや、そもそもライブラリとして配布されているようなものもあります。アプリの機能の一部分を抜き出したものという見方をすれば、コンポーネントというのは関数にとても類似した概念であることが分かります。 コンポーネント設計によって、言い換えればアプリがどのような機能を持ったコンポーネントたちに

    CSSとコンポーネント設計に対する考察 - uhyo/blog
  • CSSの見過ごしがちだけど興味深い実装テクニック、ホバーでラインを引いて逆方向で元の状態に戻すエフェクト

    先日、当ブログで紹介したThe State of CSS 2020(紹介記事)に使用されているホバーエフェクトが話題になっていたので、紹介します。 テキストリンクをホバーすると、ラインを引くまでは普通のアニメーションですが、ホバーを外した時に通常とは逆方向で元の状態に戻ります。 ラインが一方向にスーッと通り過ぎるような感じです。

    CSSの見過ごしがちだけど興味深い実装テクニック、ホバーでラインを引いて逆方向で元の状態に戻すエフェクト
    alcus
    alcus 2020/12/14
  • IE亡き後のマークアップを調べてみる|食べログ フロントエンドエンジニアブログ

    この記事はべログアドベントカレンダー2020の4日目の記事です。 この記事を執筆するのは、べログでフロントエンドチームに所属する佐伯です。 皆さんマークアップはお好きでしょうか。僕は好きです。 HTMLCSSでWebサイトが作れるのはもちろんのこと、CSSSVGを駆使すれば、JavaScriptが必要になりそうであろう複雑なUIなども簡潔に作成出来るからです。 JavaScriptはBabelなどのおかげでIE11も比較的対応しやすいですが、マークアップはそうはいきません。Polyfillが対応していないことや、対応していたとしてもReactなどのフレームワークとの共存出来るかなど問題点があるため、IE11に合わせるしかありませんでした。 しかしながら、IE11の情勢も変わってきました。 2020年3月よりIEでYoutubeを閲覧するとアラートが表示されるようになっています。 ま

    IE亡き後のマークアップを調べてみる|食べログ フロントエンドエンジニアブログ
    alcus
    alcus 2020/12/11
  • これぞプロの実装テクニック!フロントエンドのデベロッパーはCSSで実装する時に何を考えるか

    ページのレイアウトやUIコンポーネントを実装する時に、フロントエンドのデベロッパーはいろいろなことを考えます。スクリーンのサイズが小さい時はどうなるのか、デザインでは中央配置に見えるけど実装はどうすべきか、要素が少ない場合や多い場合があるのか、max-やmin-を定義した方がよいのか、、、 フロントエンドのデベロッパーはCSSでレイアウトを実装する時に何を考えるか、その思考プロセスを言語化した解説記事を紹介します。 下記は、頭の中のメガネで見える実装のイメージです。 Thinking Like a Front-end Developer by Ahmad Shadeed 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに デザインのディテールは脇に置いておく 配下ページのレイアウトを実装する時に考えること ディテールを掘り

    これぞプロの実装テクニック!フロントエンドのデベロッパーはCSSで実装する時に何を考えるか
  • Next.js と 非同期分割 CSS の悲劇

    こんにちは!10 月からリクルートテクノロジーズに join した吉井です。今年は Next.js が大いに盛り上がった年でしたね。稿では Next.jsCSS 関連で「いつか遭遇するかもしれないバグ」を紹介したいと思います。 これは「あるルール」を守ってさえいれば遭遇することのないバグ、且つ現状の Nex.js の仕組みでは起こり得る事象になりますので、どうしてこの様なことが発生するのか?をきちんと理解することを目的としています。 【バグ概要】色が不規則に変動する 手順 操作

    Next.js と 非同期分割 CSS の悲劇
    alcus
    alcus 2020/12/04
  • しっかり理解しておくと便利なCSSのテクニック、minmax()関数の使い方

    minmax()はCSSの関数で、要素サイズの最小値と最大値を定義することができます。カードを配置するグリッド、記事を中央配置で画像を幅いっぱいにするフルブリードなど、ページのレイアウトやUIコンポーネントの実装に非常に便利です。 CSS Gridにおけるminmax()関数の実用的で、便利な使い方を紹介します。 A Deep Dive Into CSS Grid minmax() by Ahmad Shadeed 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに CSS Gridにおけるminmax()関数 minmax()のバリデーション minmax()をシンプルなグリッドに使用する auto-fitとauto-fillの相違点 minmax()の便利な使い方 考えなしに、auto-fitを使うことの弊害 終わりに

    しっかり理解しておくと便利なCSSのテクニック、minmax()関数の使い方