[フレーム]
1 - 38 件 / 38件
タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。
CSSの解説書はたくさんありますが、今までのCSS本とはかなり異なる面にフォーカスされたCSS設計についての解説書を紹介します。 かなり実践的な解説書です、CSSの何に気をつけて、CSSをどのように書き、CSSをどのように管理するとよいか、現在主流の実装・設計・管理方法について、最適解となるためのアプローチや思考プロセスが詳しく解説されています。 本書は中・上級者向けの内容をていねいに詳しく解説したものです。CSSの初心者向けの基礎知識やサンプルなどはありませんが、CSSに取り組んでいる人であれば大丈夫だと思います。CSSの実装・設計・管理の方法にフォーカスされ、プロジェクトレベルでのCSS設計について解説されています。 著者の高津戸氏とはかなり前にお会いしたことがあるのですが、イラストにそっくりな印象がありますね。
CSS設計で本当に難しいのは「ルールを理解すること」ではなく「ルール通りに自分でコードを書くこと」だと思います。 実際にコードを書いていると「あれ、ここってどうすればいいんだろう?」「こういう場合はどうすべき?」といったことが頻発し、結局よくわからないまま勘でゴリ押すということがよくあります。 本書はそんな人へ向けて、FLOCSSをベースにしつつオリジナル要素を加えてより体系的にまとめた設計「PDFLOCSS(ピーディーフロックス、Page Divided FLOCSS)」を紹介します。 「CSS設計のルールはなんとなくわかるけど、いざ自分でコードを書こうとすると手が止まってしまう」という人に読んでもらいたい一冊です。 (追記:おかげさまでCSS設計のドキュメントとして採用している制作会社様も増えているみたいです!ありがとうございます🙏)
こんにちは。ZOZOTOWN部フロントエンドチームの菊地(@hiro0218)です。 2021年3月、ZOZOTOWNは10年ぶりのリニューアルをしました。この記事では、そのリニューアルで再考したCSS設計について紹介します。 背景 今回のリニューアルでは、ウェブとアプリが部分的に共通のデザインになりました。 アプリ ウェブ このデザイン刷新には、CSSの大規模変更が必要です。チーム内で検討を重ね、最終的に、大きく書き換えるのであればコンポーネント駆動開発1ができるようにCSS設計を見直すべきという結論に至りました。 CSS設計で特別に考慮する点 現在、ZOZOTOWNのフロントエンドは、「Classic ASP」から「React」へのリプレイスを進めています。新規開発や変更のタイミングで、Classic ASPに依存した実装をReactへ改修します。 ただ、今回のリニューアルではClas
後日追記: WEB+DB PRESS Vol.133でさらに詳しく書いた。 BEMによってもたらされた、コンポーネントベースのアプローチでは、「ページはコンポーネントの集合によって表現されるべきであり、ページに含まれるのはすべてがコンポーネントである」と考える。しかしこれまでCSSを書いてきた経験から、これではデザイン意図をまともに表現することができないと感じ始めた。なぜなら、普通デザイナーはページのすべてがコンポーネントであるとは考えないからだ。 もちろんページの構成要素のなかには、明らかにそれが「コンポーネント」であると意識して作られたものもある。ただしそれは一部であり、全部ではない。「コンポーネントもあれば、コンポーネントではないものもある」という感覚のほうが普通なのだ。 典型的なUIライブラリにある、「ザ・コンポーネント」みたいなものだけではページは完成しない。例として、一貫してB
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 「HTML,CSSだって難しいよ!」 初心者でも始めやすいって言ったの誰ですかね。最初は覚えるのに必死だし、少しわかるようになったかな?で始めたサイト制作(コーティング)もエラーだらけで頭を抱える日々。そんな修行を耐えているみなさんに知ってほしい、CSSの設計についてお話できたらなと思います。概念的なこと中心になりますので細かいことは下記の参考文書をご覧ください。 『インプレス社 Web制作者のためのCSS設計の教科書 モダンWeb開発に欠かせない「修正しやすいCSS」の設計手法 谷拓樹著 2022年発行第1版』 注意 作者自身もプログ
Chrome99に新機能として CSS Cascade Layers が実装され、Firefox、Edge、Safari といった主要ブラウザで CSS Cascade Layers が使えるようになりました。 CSS Cascade Layers とは CSS の仕様において、要素にどのスタイルを適用するかはざっくりと次のような優先順位で決定されていました。(カスケード順を省いて簡略的に記述しています) !important インラインスタイル セレクターの詳細度 同じ詳細度であれば最後に宣言されたもの ここに CSS Cascade Layers が導入されると次のように変わります。 !important インラインスタイル Cascade Layers セレクターの詳細度 同じ詳細度であれば最後に宣言されたもの 従来の CSS が抱える複雑な詳細度の管理 どのスタイルを適用するか判断
CSSをわかりやすくメンテナンス性高く書くというのは長い間試行錯誤され続けてきました。命名規則でがんばる、SCSSのようなプリプロセッサを使う、CSS in JSなどいろいろな仕組みがかつて作られたりしてきましたが、現在一番シェアを集めているのがTailwind CSSです。State of CSS 2024の調査でも他のカテゴリ含めても一位です。 1/23に最新バージョンの4系がリリースされました。そんでもってぼちぼちドキュメントの読書会をしているのですが、いろいろ利用方法のヒントがあったのでまとめてみます。一部「これから使う場合はこうしたい」という僕の意見もありますが、そこに関しては異論とか「実際やってみたけどこうだった」とかあると思いますので、そういうご意見などはXとかでいただければと思います。 そもそもなぜTailwind CSSを使うのか?Tailwind CSSは万人に支持され
概要 各コンポーネントに指定するz-indexの値を定義する。 モチベーション z-indexの衝突を避けたい z-indexの指定を理由を明確にしたい コンポーネントが増えるたびにz-indexの定義を増やしたくない 前提知識 重ね合わせコンテキスト(スタッキングコンテキスト)という概念があることを前提に話を進めるため、以下のページを合わせて読むと理解がしやすい。 重ね合わせコンテキスト - CSS: カスケーディングスタイルシート | MDN (スタッキングコンテキスト) isolation - CSS: カスケーディングスタイルシート | MDN z-indexのルール 複雑さを避けるため以下のルールを設ける。 各コンポーネント内のz-index指定を極力少なくする z-indexは0から4までの値を使用する(後述のLayer Stackに基づく指定をする) -1などの負数は使用しな
開発部で週1で新しいことをやってみる『Dev実験室』の取り組み AtomicDesignを知る デザインシステムを知る CSS設計どうするのが良い? って話をする
友人の腹筋ローラーの力を信じろさんと共に監訳を担当した書籍『Every Layout——モジュラーなレスポンシブデザインを実現するCSS設計論』が出版されます。現在、Amazonで予約受付中です。当初の予定よりもかなり遅れてしまいましたが、内容はいまだ鮮やかなままに思えます。 目次: 日本語版に寄せて 監訳者まえがき Chapter 1: 基礎 1–01: ボックス 1–02: コンポジション 1–03: 単位 1–04: グローバルスタイルとローカルスタイル 1–05: モジュラースケール 1–06: 公理 Chapter 2: レイアウト 2–01: Stack 2–02: Box 2–03: Center 2–04: Cluster 2–05: Sidebar 2–06: Switcher 2–07: Cover 2–08: Grid 2–09: Frame 2–10: Reel 2
2025年 6月 11日、Lism CSS という CSSフレームワークを ver.0.1 として β リリースしました。 この Lism CSS の設計について、その概要を解説していきたいと思います。 TailwindCSSがデファクトスタンダードとなっていますが、ぜひ新しい選択肢として検討いただけたら幸いです。 はじめに WEBサイト制作において、CSS設計は永遠の課題ですよね。 「Lism CSS」は、この課題に対する新しい解決策として開発された、軽量でモダンな CSS フレームワークです。 独自のCSS設計理論をreset.cssレベルから構築しており、デザイントークン・レイアウトモジュール・CSSプロパティ単位のユーティリティクラスを組み合わせて、WEBサイト全体を支える骨組みとして機能します。 Every Layout、TailwindCSS、Bootstrap など既存の優れ
概要 こんにちは、Offers を運営している株式会社 overflow の Software Engineer(主戦場はフロントエンド)の Kazuya です。今回は、CSS Modules を用いたコンポーネントの CSS 設計について紹介します。 コンポーネントを作成する際に、どのような CSS 設計にすればいいのか悩んだ方も多いのではないでしょうか。(筆者はよく探求の旅に出ています)本記事では、昨今フロントエンド開発で採用されるケースが増えている「CSS Modules」を用いた CSS 設計を実装例を元に解説していますので、ぜひ参考にしてもらえればと思います。 おすすめの記事 はじめに 本記事では、CSS Modules を用いたコンポーネントの CSS 設計について紹介します。基本的に他のフレームワークや言語でも活用できますが、チームメンバーのスキルアセット、要件定義など様々な
HubSpotやCSS設計に明るい半田のウェブサイトです。 ウェブサイトの本質は情報を伝えることですので、それを言い訳にデザインは全体的に工事中です。 みんな大好き、あるいは大嫌いなCSS設計。そんな言葉が生まれてから久しく、JavaScriptフレームワーク(以後JSフレームワーク)を始めとする技術が提供するスコープ付きのコンポーネント環境の登場によって、そのなりを潜めている気がしなくもない。 そんなCSS設計とは何だったのか、をちょっと小難しく振り返ってみます。 なお本記事では、区別のためCSS設計が「再利用可能なパーツ」とみなす単位を(あるいは慣習的に)「モジュール」、JSフレームワークにより提供される単位を「コンポーネント」と呼びます。 CSS設計が行っていたこと 「CSS設計」と聞くと Block__Element–Modifier という形式の長ったらしいクラス名を付けることだ
5 月末頃に、Twitter で 「Tailwind CSS はプロジェクトにとって将来的に技術的負債になるかもしれない」という趣旨の意見を発端として Tailwind CSS について多くの議論が起きました。[1] Tailwind CSS は世界的に人気な CSS フレームワークとして、今までも何回もその良さや課題について議論が起きてきましたが、「Tailwind CSS で得られる価値」について主張する意見において、CSS(や、CSS の関連技術)がなぜ技術的負債になるか、Tailwind CSS を使ったらなぜ CSS が技術的負債になることを回避できるかという視点から Tailwind CSS の特性を整理している意見や記事はインターネット上に多くないと思いました。この記事ではその点に注目しつつ、Tailwind CSS が CSS 設計にもたらす利点について整理したいと思います
HTML 側の内容とセレクタがマッチすればスタイルが適用されます。このように CSS はとても単純な仕組みですが、その単純さゆえに大規模な実装では管理が難しく簡単に破綻してしまう問題点を抱えています。 CSS が破綻してしまう主な理由は以下の通りです。 セレクタには詳細度 (優先順位) が存在するスタイルには子要素にまで継承する同じセレクタを多重定義できるHTML 側の各要素はスタイルが複合的に適用される 開発現場では CSS が単純であるがために軽視されてしまう嫌いがあります。多くのプロジェクトでは Java や SQL などのコーディング規約やアンチパターンなどは用意されていますが、CSS は用意されていないケースは珍しくありません。その結果、統一されたルールがない状態でプロジェクトが進み、開発が佳境にさしかかったタイミングで CSS の逆襲が始まります。CSS が悪いわけではありませ
最近自分はTwitterで「CSS設計」と検索してきて出てきたツイートをしている人をひたすらフォローしていて、たぶんこの記事を見てくれている人の中にも、Takazudoになんかしらんけどフォローされたと思っている人もいるかも知れない。 それは、端的に言えば自分の書いた本がそういう人に届いたら良いなと思ってそうしている。そういうのを見ていると単純に応援したい気分になってくるし、自分の書いた本がなんか役になってくれたらありがたいなと思っている。 #CSS設計ができると儲かるのか?ただ、そういう「CSS設計」というキーワードで検索していると、CSS設計が出来ると稼げるだとか、CSSが書けると市場価値が高いとかいうツイートをしている人がいて、はーーん、そういうもんかねーーなどと考えたので、現時点での考えを書いておこうかと思った。 とりあえず「CSS設計ができると儲かるのか?」に対する今の自分の回答
FLOCSS(フロックス)は、人気の高いCSS設計手法の1つです。 CSSは複数人で作業したり、大規模なWebサイトになるとコード量が増えてしまい、途中で整合性が取れなくなったり、破綻してしまう場合があります。それを防ぐために必要なのがCSS設計手法で、しっかりとルールを定めてコードを書くことにより、管理しやすく、破綻しづらいCSSを記述することができます。 今回は、FLOCSSの基本や特徴をご紹介したいと思います。 【CSS設計手法】BEM、OOCSS、SMACSSの違いと特徴のまとめ CSSの設計手法とは、CSSのメンテナンス性や作業効率を向上させるためのHTMLのクラス名の付け方と、CSSのコードの管理方法の考え方のことを言います。命名規則などとも呼ばれたりしますね。 ページ数が... Web Design Trends
【CSS? 良いCSS? 悪いCSS?】 新人プログラマー必見!CSS設計の基本 公開日 : 2021年07月28日 最終更新日 : 2022年10月05日 コーディング はじめに こんにちは!AndHA新人コーダーのタイガです! Webコーダーとして働き始めて、二ヶ月が経ち、ちょっとずつ仕事にも慣れてきました! しかし、まだまだ必要な知識は盛り沢山、、、、。 前回は「新人プログラマーがセマンティック・マークアップを学習してわかったこと。」と題しHTMLのセマンティック・マークアップについて記事にしました! 読んでくれましたか? 今回はすごく大切なスキル「CSS設計」について書いていこうと思います。 CSSとは? 知ってるよ!と言われそうですがあらためておさらいです。(私個人のためにも) CSS(Cascading Style Sheets、カスケーティング・スタイルシート)とは、Webページ
はじめに この記事はCSS設計 BEMについて初心者の方向けにわかりやすく解説した記事です。 できるだけ正確な情報を記述することを意識していますが、間違ったこともあると思います。なのでこの記事でざっと概要を掴んだ後は、BEM 公式ドキュメントを参照することをおすすめします。 BEMの基本「Block」「Element」「Modifier」 それでは、BEMの基本「Block」「Element」「Modifier」について解説していきます。 Block(ブロック)とは Blockとは「機能的に独立した再利用可能なモジュール」と定義されています。 難しいですね。 簡単にいうと、「どのページでも使い回すことができるパーツ」をブロックと呼んでいます。 Blockの命名規則 まずはブロックの命名規則を見ていきます。 クラス名はモジュールの「見た目(赤や大きい)」ではなく「それが何であるか(メニューや
皆様こんにちは。フロントエンドエンジニアのレンツです。僕の連載では初学者向けに、コーディングのノウハウを提供しています。 今回はHTMLに付けるclassの名前について考えてみたいと思います。classに付ける名前によってタグの組み方もコーディングの速さも変わってきますし、拡張性の高さも変わってきます。 classの命名についてちょっと知識をつけていただいたら、コーディング時間が短くなってもっと楽しく開発できるようになりますよ! というわけでいってみましょう。 コーディングの悩み:classの命名規則 さて、HTMLとCSSを勉強したら何かサイトを作ってみたくなりますよね。HTMLタグを書いてclassをつけてCSSでスタイルを当てていく〜......という作業を延々と繰り返す日々が始まります。 勉強しはじめでアドレナリン全開のころは勢いでいくらでもできる作業なのですが、考えなしにスタートしてしま
BootstrapやVueを使用した開発で、CSSのクラス設計など強く意識することが少なかった今日このごろ。 たまたま一からスタイルを組む機会があり、改めてその設計規則であるBEMについておさらいしてみました。 BEMとは Block Element Modifier の頭文字からきており、 Block -> 大きな括り Element -> ブロックの中の要素 Modifier -> ブロックやエレメントの変化 上記3つを用いた厳格な命名規則が特徴のCSS設計手法。 基本的なルール 書き方 Block__element–modifier の形で命名し、 それぞれアンダースコア2つとハイフン2つで区切る。 <例> <div class="Block"> <div class="Block__element"> <div class="Block__element--modifier"></
はじめに この記事は #EveOneZenn (Everyday One Zenn) vol.09 です。 CSS設計のひとつである rscss を CSS Modules (React向け)にアレンジしてみたので紹介します。 紹介する規約を使った場合、下記のようなクラス名で CSS Modules を運用できます。 import React from 'react'; import cn from 'classnames'; import styles from 'styles.module.scss'; const Component = (props) => ( <button className={cn( styles.searchButton, { [styles.Disabled]: props.disabled } )} > <span className={styles.i
はじめに この記事はツクリンクのエンジニアを対象に、サービスで利用されているCSS設計の概要を知り、実際にマークアップできるようになるためのドキュメントです。 社外にも公開することで、CSS設計と運用の一例として参照していただいたり、改善意見の募集、今後ツクリンクで一緒に開発していただく可能性のある方に開発体制をよく知っていただくことも期待しています。 疑問点、改善点などあればお気軽にコメントしてください。 ※(注記)ここで紹介した設計、運用は執筆現在のものです。記事の更新状況によっては実際の運用と異なる可能性があります。 CSS設計の変遷 現状のCSS設計の詳細の前にこれまでどのようなCSSが書かれてきたのかを説明します。 v1, 規則無し 初回リリース時はid, clsss, 要素型セレクタなどを複数使ったマークアップをしていました。 一部の古いページ、SP版のレイアウトで極稀に残っている可能
FLOCSSは、OOCSSやSMACSS、BEMなどのコンセプトを取り入れたCSS設計のことです。 様々なCSS設計の概念やメリットを取り入れているため、管理や運用が破綻しにくい一方で、概念として理解しにくい点も多々あります。 なので、今回は、FLOCSSの構成やSass×ばつFLOCSSの運用方法についてまとめました。 皆さんのコーディングの参考になれば幸いです。 FLOCSS の構成 構成は Foundation、Layout、Object で構成されます。 Foundation foundation は、リセット系 css の読み込みや、そのサイトの基本となるスタイルを定義します。 大概は_base.scssや変数を定義するファイルが入ります。 Layout layout は、ヘッダー、フッター、コンテンツエリアなど、サイト全体の共通部分となるものを定義します。 接頭辞は l-をつけて、
BLOG ブログ ホーム ブログ css設計・命名規則の歴史(BEM・OOCSS・SMACSS・FLOCSS・tailwindcss) 前置き css設計・命名規則の件ですが、マークアップする上で避けては通れない比較的面倒な悩み事です。 案件によってはクライアント様側からのルールが決められている場合もあり、その場合はそのルールに則って構築すれば済むことですが、一般的にはマークアップする方にお任せされることも多いですね。 その場合、個人の好みだったり、その時の流行りなどから、悪く言えば適当に設計されることも多いかと思います。 なんだったら「css設計ってナニ?」的な場合も多々見受けられます... 新規構築も、運用も1人で全て行うような案件であれば問題ないとも言えますが、チームでの構築や運用は別の方(もしくは別会社の方)が行うような場合は、その設計自体や命名規則などがハッキリとしたルールに則ってい
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
はじめに 今回は『CSS設計完全ガイド』という書籍の内容を元に、実際のホームページを見ながらCSS設計にふれてみよう!という内容になっております。 とりあえずデザインやデモサイトを見ながらHTML、CSSを使ってコーディングできるけど、これからどのようにレベルアップすれば良いかわからない。 CSS設計って聞いたことあるけど、難しそう... そんな方に読んでいただければと思います。 CSS設計を始めるための目を養う CSS設計において大切な2つの法則があります。 抽象化する 分ける 「抽象化するってなに?」「分けるってなにを?」って感じだと思いますので、よりわかりやすくすると 共通する部分を見つける (パーツの大きさ・役割で)分ける となります。 では、上のことを意識しながら弊社のホームページを眺めてみてください。 共通する部分はわりと見つけやすいのではないでしょうか。 例えばこんなものが挙
BEM命名規則を前提としています。 ルール 略さない(imgは略してOK) 長い単語で一般的な略し方で浸透してる場合は略してOKとします。 description...desc introduction ...intro information...info Frequently Asked Questions...faq 一般的な単語を使うこと 新しい言葉は作らないでください blockとElementに同じ命名をしない。 .button__buttonや.input__inputはNG 同じコンポーネント内で似てる単語は使わない。 containerとcontent、dateとdataなど。 単語をつなぐときは-を使う 〇〇-✕✕のように-でつなぐことで「〇〇の✕✕」を表す。 search-barで「検索のバー」、tag-groupで「タグの集まり」というように HTMLタグの名前をク
今回はCSS設計の方法についてまとめていきます。 歴史から振り返って解説していくので、かなりタメになる内容になっているかと思います。 ぜひ、この記事を参考にしてCSS設計に入門しましょう。 CSS開発の歴史 CSS登場当初は、そこまで複雑なサイトが存在しなかったので、特に設計などは必要ありませんでした。 けれど、徐々にリッチなデザインが求められるにつれて、CSSのファイルがカオスになったため、CSS設計論が登場してきました。 具体的には、BEMやOOCSSなどで、開発・保守をしやすくするための設計理論が提唱されました。 その後、それらを元にした、CSSフレームワークが登場してきます。(BootStrapなど) さらに、表現力が乏しいという欠点もあったため、SassなどのCSSプロプロセッサーなども開発されました。 その後、Reactなどのコンポーネント指向のJavaScritpフレームワー
判型:B5判、1C 総ページ数:240ページ 発売日:2021年11月23日 著者:ヘイドン・ピカリング、アンディ・ベル 監訳:安田 祐平、横内 宏樹 再利用性を劇的に向上させる方法論 多様な閲覧環境への対応や、多様なビジュアルデザインの実現といった複雑な要件を強いられるCSSは、管理し続けることが非常に困難です。本書では、より発展的で包括的なCSS設計の考え方について、現役のWebデザイナーやフロントエンドエンジニアを対象に解説します。 CSSの強みであるしなやかな性質を活用した、堅牢なレイアウトシステムを構築するために、本書では「レイアウトプリミティブ」というアプローチを提案しています。これによってCSSの再利用性が高まり、大幅にコードが削減できます。 また、しっかりとCSSらしい考え方を理解したいという方にもおすすめです。 日本語版に寄せて Every Layoutを執筆したことの一
こんにちはTANE-beのエンジニアです! 皆さんはCSSをどのように意識して記述しているでしょうか? CSSの書き方は10人いれば、書き方も10通りあると言われるほど、自由に構築することができます。しかし、その自由さが原因で書き方を乱雑にしてしまうとCSSが重複したり、修正の際に大変になることがよくあります! CSSの中身を見ると!importantを使い回されていたり、1つのCSSを変更するといろんな箇所のスタイルが変更されたりと色々大変な目にあったことも! そこで今回は、破綻しないCSS設計、FLOCSS(フロックス)についてご紹介しようと思います。
今回読んだ本 Web制作者のためのCSS設計の教科書 モダンWeb開発に欠かせない「修正しやすいCSS」の設計手法 発刊されたのが2014年とおよそ10年前の本になりますが、Web制作においてカオスなCSSに陥らないよう、基本的なCSSのルールから主にコンポーネント設計の手法について書かれています。 以前『CSS設計完全ガイド』という、同じくCSS設計の書籍を読んだことがありましたが、こちらの方がより(文章量的に)ライトで、どちらかといえばCSS設計の概念的な部分で参考になる点が多かった印象です。 自分のCSS設計の現状 普段CSS(SCSS)を書くときは、このあたりを気をつけて臨むようにしています。 SCSS+BEM記法を使用 セレクタにHTMLタグ、idは使用しない 極力HTMLの構造に依存しないスタイルの当てかたをする(つもり) 既に定義されているスタイルの打ち消しは避ける ハイライ
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く