タグ

cssとCSSに関するcuttoff19のブックマーク (66)

  • CSS Modulesの歴史、現在、これから - Hatena Developer Blog

    マンガメディア開発チームの id:mizdra です。半年ほど前から「フロントエンドエキスパート」という肩書きをもらい、社内でフロントエンドの啓蒙活動をしています。具体的にどんな活動をしているかについては、社内のポッドキャストで少し話しましたので、興味があれば聞いてみてください。 developer.hatenastaff.com 最近、私はReactを採用する社内プロダクトでのCSSの書き方を検討していました。最終的にそのプロダクトでは、CSS Modulesを採用するに至りました。しかしその過程で、CSS Modulesのメンテナンス体制に対して懸念があり、将来的な存続を危ぶむ声が界隈にあることを知りました。 ただし、実際にメンテナンス体制について調べてみたところ、万全ではないものの引き続きメンテナンスがされていて、使用もできることが分かりました。そこで、今回はCSS Modulesに

    CSS Modulesの歴史、現在、これから - Hatena Developer Blog
  • CSS レイアウト料理帳 - CSS: カスケーディングスタイルシート | MDN

    CSS チュートリアル CSS の基 CSS の第一歩 CSS の第一歩の概要 CSS とは何か CSS 入門 CSS の全体像 CSS の働き 評価課題: 経歴ページのスタイル設定 CSS の構成要素 CSS の構成要素の概要 CSS セレクター Type, class, and ID selectors Attribute selectors Pseudo-classes and pseudo-elements Combinators カスケードと継承 Cascade layers ボックスモデル 背景と境界 書字方向の操作 内容のはみ出し CSS の値と単位 CSS における大きさの指定 画像、メディア、フォームの要素 表のスタイル付け CSS のデバッグ CSS の整理 評価課題: CSS の基的な理解度 評価課題: 素敵なレターヘッドの便箋の作成 評価課題: かっこいいボック

    CSS レイアウト料理帳 - CSS: カスケーディングスタイルシート | MDN
  • CSSの難しさが分かるようになった人にお勧めの解説書、さまざまなレイアウトを実装する再利用性を向上させるCSSの設計方法 -Every Layout

    CSSって面白いと思い始めた人、CSSの難しさが分かるようになった人、そしてCSSが大好物な人にお勧めの解説書を紹介します。 書は、CSSの経験を積んでいるデベロッパー向けの解説書です。レスポンシブデザインを実現するレイアウトについて実装だけでなく、設計・管理・考え方について詳しく解説されています。 書の元になっているのは、Relearn CSS layoutです。公開されたのは2019年ですが、現在でも人気が高いサイトで、さまざまなレイアウトを実装するCSSの設計方法について解説されています。その日語版ともいえるのが書です。 書は来週発売! 一足先に中身を紹介します。

    CSSの難しさが分かるようになった人にお勧めの解説書、さまざまなレイアウトを実装する再利用性を向上させるCSSの設計方法 -Every Layout
  • ブログに CSS in JS 環境下での スタイル分離リファクタリングを施してみた

    そろそろブログを大幅に改修しようと思っており、その前準備をしてリファクタリングをしていました。 具体的には css modules からの脱却と、スタイル周りのリファクタリングをしていました。 そのとき、経年劣化に耐える ReactComponent の書き方 と styled-components の採用と既存資産を捨てた理由 という記事を参考にしました。 これらは styled を一つのコンポーネントに当ててその中で SASS 記法で中にスタイルを当てていくというもので、CSS in JS 環境下において、styled と DOM を分離するテクニックとして学びがあるものでした。 僕は styled-compoennts ユーザーですが、styled-components の採用と既存資産を捨てた理由でも触れられているように、 styled なラッパーコンポーネントとかがいっぱい作られ

    ブログに CSS in JS 環境下での スタイル分離リファクタリングを施してみた
  • Next.js が CSS Modules を推奨する真相に迫りたい

    Next.js 9.2 から CSS Modules がビルトインサポート対象になった。 CSS最適化に関して、組み込みサポートのレールから逸れると、ページ単位で最適化された静的CSSの生成不全に陥る。少しでもパフォーマンスの良い Next.js App を構築したいのなら、CSS Modules 一択というのが現状で、CSS in JS に慣れ親しんだ身からすると正直辛い現実だ。 CSS in JS よりも CSS Modules の方が、ロードタイム・ランタイムともに、パフォーマンス面で有利なことは知られている。こちらのベンチマークテストが参考になる。 しかし、来であるなら皆 CSS in JS を使いたいのではないか。あえてレガシーな CSS Modules 推奨とする理由は、CSS という難儀な仕組みを乗り越えるため、技術的に「そうせざるを得ない」理由が他にもあるのではないか。真

    Next.js が CSS Modules を推奨する真相に迫りたい
  • CSSレスポンシブデザインをSPAで使うと破滅する - 橋本商会

    レスポンシブデザインは あくまで見た目の調整、表示・非表示のコントロールなので 下手に使うと、デバイス毎にインタラクションが違うUIのstateが無茶苦茶複雑になっていく コンポーネントという概念が無かった時代の設計を、SPAに持ってくるのはおかしい 画面サイズ毎にCSSで手軽にを切り替える、というのなら良い しかし、画面サイズ毎にインタラクションが違う部品が出てくると設計が破綻する 画面サイズ毎のがごちゃ混ぜになる コードが追えなくなり、バグの温床になる では、どうするか? 素直に画面サイズ毎、デバイス毎、あるいはインタラクション毎のReactコンポーネントを書けばいい 使いまわせる部品は、コンポーネントとして切り出して再利用する 歴史を紐解く 2011年頃、レスポンシブデザインが生まれた 当時のwebにはコンポーネントが存在しなかった 単体で複雑な状態遷移をするインタラクティブなパーツ

    CSSレスポンシブデザインをSPAで使うと破滅する - 橋本商会
    cuttoff19
    cuttoff19 2021/06/02
    "素直に画面サイズ毎、デバイス毎、あるいはインタラクション毎のReactコンポーネントを書けばいい"
  • CSS設計の基本 - Qiita

    #はじめに 株式会社サイシードのインターンシップにて、CSSを設計する際の規則をまとめました。 稿で記述している設計規則に基づいての開発は、始めてから日が浅いです。 実際に使用していく中でさらに改善を進めて行く予定です。 設計規則を考えるに当たって**「Web制作者のためのCSS設計の教科書」**を参考にさせて頂きました。 より詳しくCSSの設計方法について学びたい方はぜひ手にとってみてください。 設計規則は、上記の書籍で紹介されている中でも特にBEMとFLOCSSに影響を受けています。 稿が少しでもみなさまの参考になれば幸いです。 ###スタイルの役割の分類 ####1.構造 形や大きさなどを指定する。 家で言うところの骨格。 例: width, height, border, padding, margin, font-size など ####2.見た目 色や太さなどを指定する。

    CSS設計の基本 - Qiita
  • Incomplete List of Mistakes in the Design of CSS [CSS Working Group Wiki]

    That should be corrected if anyone invents a time machine. :P

    cuttoff19
    cuttoff19 2021/05/13
    W3CのCSS部門の人達によるCSS設計アンチパターン集
  • 俺流レスポンシブコーディング

    俺流レスポンシブコーディングの覚書。「人には人のレスポンシブ」があるのでこれが正解だってわけではないのですが、レスポンシブコーディングで悩んでいる人にとって参考になる記事になってくれたら嬉しいです。 ブレイクポイントは特定のデバイスの画面サイズを基準にしない 以前アンケートを取った時にデバイスのサイズを意識して決める人が半数以上を占めていた。 アンケート結果を抜きにしても「2021 年のブレイクポイント決定版はこれだ!」的な記事がバズっているのを定期的に目撃し、主流のデバイスのサイズを比較するアプローチがほとんどであるが、僕はデバイスの端末のサイズを基準にブレイクポイントを決めることには否定的である。 主流のデバイスのサイズなんてものは時間が経てば変化する。 昨年 iPhone 12 が発表された時に従来の画面サイズとは違うバリエーションになることが分かるやいなやタイムラインが慌てふためい

    俺流レスポンシブコーディング
  • Scoped CSSにおけるCSS設計手法 - ICS MEDIA

    Vue.jsでCSSを利用する際にScoped CSSCSS Modules、CSS-in-JSなどの手法があります。とくにScoped CSSは気軽に利用できるため、利用する機会も多くなって来るかと思います。 Scoped CSSがあればCSS設計を使わなくてもよいという意見もありますがはたして当なのでしょうか? ICSではScoped CSSにおけるCSS設計に関する議論が活発におこなわれており、記事では私たちが考えた方式を紹介します。記事はVue.jsのSFC(シングル・ファイル・コンポーネント)でScoped CSSを利用しているものを想定しています。 CSS設計とは 基的にCSSは常にすべてのページで読み込まれ、増えれば増えるほど相互に上書きし合う状態が起きやすく、他の言語に比べてかなり壊れやすい言語と言えます。 そこで登場するのがCSS設計です。BEMやSMACSS、

    Scoped CSSにおけるCSS設計手法 - ICS MEDIA
    cuttoff19
    cuttoff19 2020/12/24
    scoped cssでもBEMみたいなCSS設計をしといた方がいいよという話
  • 現代開発者のためのCSS基礎技術 - Qiita

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

    現代開発者のためのCSS基礎技術 - Qiita
  • styled-componentsの採用と既存資産を捨てた理由 - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。フロントエンドエキスパートチームの@nakajmgです。 私が所属しているフロントエンドエキスパートチームでは、現在 kintone の脱レガシーの一環として React + TypeScript 化に取り組んでいます。この取組の中で Scss で定義されている既存のスタイルを styled-components で書き直していくという決定をしました。 今回は styled-components の採用を決定するまでの過程や、既存の Scss ファイルの扱いについて検討した内容などを紹介します。 スタイル定義方法の検討 kintone にはユーザーが JavaScript でカスタマイズできる機能があり、ユーザーが行っているカスタマイズの中には、DOM 構造や CSS のクラス名に依存しているものもあります。このようなカスタマイズはサポートの対象外ではありますが、ユーザーにでき

    styled-componentsの採用と既存資産を捨てた理由 - Cybozu Inside Out | サイボウズエンジニアのブログ
    cuttoff19
    cuttoff19 2020/06/25
    “現在 CSS Modules はメンテナンスオンリーな状態にあり、将来 deprecateとされる可能性が高く、”
  • webpack4でTailwind CSSのファイルサイズ削減までやってみた - Qiita

    Tailwind CSS https://tailwindcss.com 作ったもの Simple Collage Maker ブラウザ上でローカルの画像ファイルを読み込み、連結して一枚の画像にするツール。 webpack + Vue.js + Tailwind CSSCSSのファイルサイズ約8KB。(普通にMinifyしただけだと600KBくらいになります。) ソースコードのファイル構成はこんな感じです。 インストール webpackはインストール済みとして、CSSローダー類とTailwind CSSをインストールします。

    webpack4でTailwind CSSのファイルサイズ削減までやってみた - Qiita
  • styled-components(CSS in JS)をやめた理由と、不完全なCSS Modulesを愛する方法 - Qiita

    styled-components 画像は styled-components ツライっていう顔です。 Angularのようにスタイリングまで面倒を見てくれるUIフレームワークならまだしも、Reactの場合はコンポーネントのスタイリング方法も自身で選択しなければいけません。CSSのスタイリング方法/設計はいくつか存在しますが、どれも一長一短で、やはり銀の弾丸は存在しません。スタイリング方法を選択可能なUIフレームワークは、この混沌とした選択肢の中から価値を見出す必要があるわけです。 僕はBEMによる人力CSS管理(Sass/Less/Stylus)から、 { fontSize: 14 } のようなJSオブジェクト形式のCSS in JS、 styled-components のようなTemplate Stringsを利用したCSS in JS、そしてCSS Modulesまで幅広く公私とも

    styled-components(CSS in JS)をやめた理由と、不完全なCSS Modulesを愛する方法 - Qiita
  • 【保存版】Webフロントエンド基礎力(初心者向け) - Qiita

    ブラウザで動くWebページのプログラミング実装をフロントエンドと呼びます。 最近はJSON色つけ係と呼ばれてたりしますが、 Web開発未経験・初心者向けに最低限知っておいたほうが良い基礎知識とテクニックに関して体系的にまとめておきます。 (CodePenによる動作例付き) 環境構築に関しては(兎に角)早くプロトタイプを作る技術(初心者向け)を参考にしてください。 HTMLCSSJavaScriptはブラウザ自体の実装に依存します。 この記事では比較的汎用的に使える書き方やHTMLCSS、JSを記載したつもりですが 最新のJavaScript APICSS3の機能によってはブラウザによってサポートされていない機能もあります。(特にIE) 各機能に関してはCan I useで現在のブラウザの対応状況を確認することができます。 HTML HTML(Hyper Text Markup La

    【保存版】Webフロントエンド基礎力(初心者向け) - Qiita
  • CSSだってJavaScriptの値が欲しい! - Qiita

    インターン先でreact + typescript + scssのお仕事をしている @haduki1208 と申します。 最近reactよりscssを多く書いてる気がします。割と楽しいです。 TL;DR CSS変数をインラインスタイルで書く var()で読み込む CSSJavaScriptの値を取得する 趣味で「任意の大きさ・色・向きを指定できる矢印アイコン」を作っていた時に 「CSSJavaScriptの値を取得できないのか?」 と思ったのでやってみました。 cssにattr()という関数がありますが、content属性でしか動作しないようです。 今回はheight, width, background-color, rotateに任意の値を使いたいのですがダメです。微妙な仕様ですね。 環境 typescript + react + scss および typescript + rea

    CSSだってJavaScriptの値が欲しい! - Qiita
    cuttoff19
    cuttoff19 2019/12/07
    CSSのカスタムプロパティとReactのpropsの合せ技。勉強になる。
  • 静的サイトをとにかく高速化する話

    自分のポートフォリオサイトをサンプルに、どのくらいの容量削減ができるのかを確認してみました。 jsおよびCSSは、サイトの表示に必要な要素を1ファイルにバンドルした状態です。 画像ファイルはjpegの圧縮率などによって最終的なサイズが大幅に変化するので、jsとCSSのサイズ変化のみを取り上げました。 Bootstrap + Font Awesomeのような重量級フレームワークを使用しても、十分に実用的な容量まで削減できました。これならスマホ+3G回線での表示も心配ありません。 手法 適用しやすさを順に手法を並べると、以下のようになります。 遅延する 圧縮する キャッシュする まとめて削る 遅延する サイト上にあるほとんどのリソースは、実際には後から読み込んでも問題なく動作します。 まず最小限の構成でサイトを表示させ、重いファイルは後から読み込みます。 javascriptの遅延読み込み h

    静的サイトをとにかく高速化する話
  • 2019年までに見直しておきたい
CSS・JavaScriptの手法 - Speaker Deck

    Frontend Conference Fukuoka 2018で発表した資料です。 https://frontend-conf.fukuoka.jp/ 各リンク先を確認する場合は、以下のpdfを参照ください http://tonkotsuboy.github.io/slides/181204…

    2019年までに見直しておきたい
CSS・JavaScriptの手法 - Speaker Deck
    cuttoff19
    cuttoff19 2018/12/10
    flexとgridの使いどころが整理できてよかった
  • 表示件数と高さが変わるブロックの一覧を、画面サイズに合わせてカラム数を変えて表示する方法

    レスポンシブなサイトで高さが可変のブロック要素の一覧をレイアウトする際にてこずったので、課題になったこととその解決方をメモしておきます。ニュースサイトなどに良くあるサムネイル画像とタイトルのブロック要素の一覧で、画面サイズに合わせてカラム数が変わる以下のようなレイアウトです。ちなみに、Flexboxを使わないやり方です。nth-child()とclearを使った方法、inline-blockを使った方法、さらに、flexboxを使った方法の3つをまとめてみました。 レイアウトの条件 レイアウトの条件を整理しておきます。 表示件数が変わる 表示件数が変わる場合でも同じHTMLCSSでレイアウトする ブロックによって高さが異なる 画面サイズに合わせてカラム数を変える 上の条件だとli要素をfloatしてメディア・クエリで画面ごとに幅を指定すれば簡単にできそうです。ところが、ブロックの高さが変

    表示件数と高さが変わるブロックの一覧を、画面サイズに合わせてカラム数を変えて表示する方法
  • Reactのコンポーネントのスタイリングをどうやるか - Qiita

    この記事は KIT Developer Advent Calendar 2017 の 18 日目の記事です。 はじめに React で作成するコンポーネントにスタイルを適用する方法は大きく分けて以下の 4 つがありますが、どの方法にもメリットやデメリットがあり、一概にどれが優れているとは言えないのが正直なところです。記事ではそれぞれの手法を紹介し、比較します。 クラス名によるスタイリング インラインスタイル CSS Modules CSS in JS 扱う構文 記事では以下の仕様・構文を扱います。 ES2015, ES2016, JSX オブジェクトを受け付けるスプレッド演算子 (Stage 3, Proposal) クラスの public フィールド (Stage 2, Proposal) 現在は private フィールドの提案とマージされて class-fields(Stage

    Reactのコンポーネントのスタイリングをどうやるか - Qiita