タグ

Sassに関するmasayoshinymのブックマーク (29)

  • Sassのモジュールシステムを@importから@useに移行する方法を考えてみた

    先日、KOJIKA17さんの「Sassを@importから@useに置き換えるための手引き 」という記事を見て、2022年10月ころにはSassで@importが使えなくなる可能性があることを知りました。まだ2年ありますが、新しく取り組むプロジェクトでは@useを使ったモジュールシステムにしたいので、自分が使っている構成の置き換えについて考えてみました。 まずはアイディアをシェアをして叩き台にしてもらうのが目的ですが、他に良い書き方があったらぜひアドバイスいただきたいというのもあります。 試しながら、考えながら書いているので内容は変更される可能性が高いかもしれません。 Sassの新モジュールシステムについて Sassの新しいモジュールシステムについては、上述の記事や SHIFTBRAINさんのブログ がわかりやすかったです。ありがとうございます。 公式の発表と@useと@forwardのド

    Sassのモジュールシステムを@importから@useに移行する方法を考えてみた
  • Sassを@importから@useに置き換えるための手引き - kojika17

    Sassの@importルールは、廃止されることが予定されています。 @useや@forwardといったルールに置き換わるのですが、これらは全く新しいシステムです。 これらの知見が溜まってきたのでご紹介します。 @import と 新しいモジュールシステム Sassの初期の方から実装されていた@importは、テキスト形式でSassファイルを読み込むための機能です。便利な機能ですが、CSSの@importと重複しているため、SassなのかCSSなのか一見してわかりにくい側面がありました。 新しいモジュールシステムは、この問題を解消し、Sassをより柔軟に使用できるようにします。 @importではグローバルに指定されていた変数などは、ファイルごとにカプセル化され、ファイルの内容に基づいて解決できるようになりました。 現在、Dart Sassしか新しいモジュールシステムは使えませんが、Lib

    Sassを@importから@useに置き換えるための手引き - kojika17
  • DjangoでSCSSを使用するには - Qiita

    前書き SCSSCSSの書き方ほぼそのままにSassの機能が使えるため、すでにCSSを使っている人には学習コストが低い、大変便利なメタ言語です。 ただ、Sassは便利ですがコンパイルが必要なため、導入をためらう方もいらっしゃると思います。 もちろんDreamWeaverやVSCodeなどのエディタでは自動でコンパイルしてくれる機能がありますが、プラグインを別途追加する必要がある場合もあり、正直面倒に思う人も多いでしょう。 そういった方でももしDjangoの環境をお持ちであれば、コンパイルをどうするかの問題は一挙に解決することができます。 DjangoにはSassのプロセッサーが用意されているため、簡単な設定でSassを使用することができるのです。 方法 プロセッサーのインストール プロセッサーはpipコマンドからインストールすることができます。 pip install libsass d

    DjangoでSCSSを使用するには - Qiita
  • プログラマーから見た、SCSSの正しい(かもしれない)使いかた - Qiita

    SCSSとは SCSSというのは、CSSのアレなところを何とかしようという目的で作成されたメタ言語です。詳細は省略します。 なにそれ? ってかたは、コチラなどがわかりやすいのではないかと思います。 CSSのメタ言語Sass(SCSS)、LESSの完全入門 でですね。 ここで大事なのは、こいつは要するにCSS周りの技術ですので、つまるところは基「デザイナーさんが使う」ものである、というところです。 彼らは概して、非常におおらかで、健康的で、寛容です。私たちサーバーサイドエンジニアのように、細かいことで「こんな仕様は許されんな!」「なんだよこの仕様設計したヤツって○○じゃねーの?」などとイラついたりしません。 なので、あんな欠点だらけのクソ規格であるCSSにも、特に気にしたりしないらしいのです。 ところがやはり、中には「CSSのそーゆーところって、やっぱ問題だよねー」って思う人々もいたらしく

    プログラマーから見た、SCSSの正しい(かもしれない)使いかた - Qiita
  • postass というツールを作った - Qiita

    ポスタスと読みます post + sass の造語です Sass をコンパイルした後に 後処理(CSS の変換)を行うので、この名前をつけました https://www.npmjs.com/package/postass https://github.com/kanatapple/postass 作成した経緯 社内のエンジニアから「scssファイルを1個更新するだけでビルドが終わるのに8秒かかるので助けてください!」と依頼が来たので、この記事とか参考にいろいろ試したんですが、自分の環境ではなぜか高速化できませんでした さらに、コンパイルした後に CSS に変換をかけたい(ベンダープレフィックスの付与、URL書き換えなど)という要望もあったので、「それなら、そういうツール作っちゃおう」と思ったのがきっかけです (ちなみにこのツールを使うことで、ビルド時間が8秒 -> 0.x秒になり、残業時間

    postass というツールを作った - Qiita
  • Sass:cubic-bezierを使った各種イージングを変数化しておき、簡単に指定できるようにする備忘録 - NxWorld

    CSSでイージングを使用する際、easeやlinearの場合はそのままその名前を値に記述すればいいですが、例えばeaseOutCubicやeaseOutExpoなどを使用したいときはcubic-bezierを用いて記述する必要があります。 ただ、それぞれの指定数値をいちいち覚えておくのは面倒なのと単純にイージング名で使用できたらいいなと思ったので、簡単に指定できるように変数化してみた備忘録です。 紹介しているイージング名やcubic-bezierの各値については、「Easing Function 早見表」を参照しており、それに加えease, linear, easeIn, easeOut, easeInOutも含めてあります。 単純な変数化 $ease : cubic-bezier(0.25, 0.1, 0.25, 1); $linear : cubic-bezier(0, 0, 1, 1

    Sass:cubic-bezierを使った各種イージングを変数化しておき、簡単に指定できるようにする備忘録 - NxWorld
  • Sass(SCSS)のmixinを使って、Media Queries(メディアクエリ)を使いやすくするスニペット - NxWorld

    ブレイクポイントや使用回数が増えるに連れてどんどん管理などが面倒になってくるMedia Queries(メディアクエリ)を、Sassのmixinを使って利用しやすく且つ管理もしやすいようにしたスニペットを紹介します。 ここで紹介する以外にも方法はあるとは思いますが、個人的に過去に使っていたとか普段から使っているものを3パターン紹介します。 条件分岐を使う ひとつ目は条件分岐を使ってひとつずつブレイクポイントを指定したものです。 ブレイクポイントの追加をしたい場合は同じように条件分岐を追記し、逆に不要なものがあれば該当の条件分岐を消せば変更できます。 また、各ブレイクポイントは数値での指定ではなく「small」や「large」という形でそれぞれ用意しており、使用時はこれらを引数に指定します。 こうしておくことで後で数値を変更することになった場合でも、mixin内で記述している数値部分のみ変更

    Sass(SCSS)のmixinを使って、Media Queries(メディアクエリ)を使いやすくするスニペット - NxWorld
  • webpack で React, scss のコンパイルと ESLint を設定する方法 - Qiita

    webpackとは webpackは依存関係のあるJSやCSSなどを、まとめてくれるビルドツールです。 webpackにはLoaderという仕組みがあり、ソースコードに適用する処理を柔軟に設定することができ、 そのLoaderを使うことで、scssやJSXなどで書かれたファイルを変換することができます。 ここでは、React (jsx) , scss のコンパイルと、JavaScriptの構文をチェックしてくれるツールの ESLintwebpackで行えるように設定します。 構成 今回は、以下のようなディレクトリ構成を想定し、 src の中の React と scss ファイルをdestディレクトリ内に配置することを考えます。 src ├─ react └─ scss dest ├─ js └─ css package.json node_modules webpack.config.

    webpack で React, scss のコンパイルと ESLint を設定する方法 - Qiita
  • Web制作者のためのSassの教科書 - 公式サポートサイト

    このサイトは、2013年9月13日に発売した、書籍「Web制作者のためのSassの教科書 これからのWebデザインの現場で必須のCSSメタ言語」の公式サポートサイトです。 2017年9月15日に改訂2版も発売しました! 改訂2版の発売に伴って、初版のサポートは終了させて頂きます。

  • SassとSCSSを変換するsass-convertコマンドとウェブサービス

    CSS での Sass 記法と SCSS 記法では記法が異なるので、移行する場合にはコンバート(変換)が必要となる。記法を相互に変換するために、ウェブサービスを使う方法と、sass-convert コマンドを使う方法を試してみまして、どちらも上手くいきました。 — 環境 — Sass 3.4.18 Mac OS X Yosemite Sass と SCSS の記法の違い Sass と SCSS の記法には具体的には以下のような違いがあります。 — Sass — 拡張子が .sass インデントでブロックを表す 行末の ;(セミコロン)が不要 :(コロン)の後に半角スペースが必要 ミックスインは = で表現 インクルードは + で表現 — SCSS — 拡張子が .scss {} でブロックを表す 行末に ;(セミコロン)が必要 :(コロン)の後の半角スペースが不要 ミックスインは @mix

    SassとSCSSを変換するsass-convertコマンドとウェブサービス
  • Sass(SCSS)入門

    コーナーは、技術評論社発行の書籍『Ruby on Rails 4アプリケーションプログラミング』の中から、特にBuild Insiderの読者に有用だと考えられる項目を編集部が選び、同社の許可を得て転載したものです。 『Ruby on Rails 4アプリケーションプログラミング』の詳細や購入は技術評論社のサイトや目次ページをご覧ください。 前々回~前回は、CoffeeScriptの基礎解説しました。今回は「Sass(SCSS)」の基礎を説明します。 ■ 9.4 Sass(SCSS) Sass(Syntactically Awesome StyleSheets) は、いわゆるCoffeeScriptのCSS版とも言うべき存在で、CSSのコードを生成するための言語です。CoffeeScriptと同じく、Sassのコードもまた、CSSにコンパイルされた上で送出されますので、クライアント環境に

  • RailsアプリケーションのためのフロントエンドLint環境の整備(SCSS編) - Wondershake 開発者ブログ

    こんにちは。フロントエンドエンジニアの佐々木です。 前回は JS 周りの Lint 環境を整備しました。 engineering.wondershake.com 今回はスタイルシート周りの Lint 環境を整備した話になります。 はじめに スタイルシートはある程度のルールをチーム内で共有しておかないとすぐに雑多なコードになってしまいます。 コーディングルールを明文化してレビューで指摘するといった方法もありますが、できれば Lint ツールでコーディングスタイルを定義して、ルールに逸脱したコードは CI で落とすようにすると健全です。 今回は 2 年間運用されてきた scss ファイルに scss-lint を実行して、エラーを 0 にして CI で弾くことができる状態にするのがゴールになります。 なお scss-lint を導入するにあたりこちらの記事を参考にさせて頂きました。 自動検出と

    RailsアプリケーションのためのフロントエンドLint環境の整備(SCSS編) - Wondershake 開発者ブログ
  • SassのビルドもWebpackでHot Module Replacementしたい - Qiita

    Rails + モダンJS環境で新規アプリ作成の続きです。 上の記事ではRailsのSprocketsを切って、JSの環境をnpmによせました。となってくると、 Sassのビルドもnpmによせたい!ただ、gulpなどは使いたくない! ということで、WebpackにSassのビルドも任せて、CSSでもHot Module Replacementをしようとやってみました。以下、CSSのソースは src/css/ に置くこととしています。 前回と、今回で作成したサンプルはこちらです。 https://github.com/ufotsuboi/rails-webpack-sample 注意 今回はCSSは全体に読み込む、JSは一部のみといった、JSとCSSを完全にわけて扱いたいような状況を想定しています。 SPAのようなJSもCSSも全部のページで読み込むといったような状況であれば、webpack

    SassのビルドもWebpackでHot Module Replacementしたい - Qiita
  • Sass(SCSS)のmixinを使って、:nth-child疑似クラスなどを指定しやすくする便利スタイルシート「Family.scss」 - NxWorld

    CSSでn番目の要素に適用したいときなどに利用する:nth-child疑似クラスや:nth-last-child疑似クラスですが、先頭または最後からn番目になどの単純な指定ではなく、ちょっと複雑な指定をする際は指定方法を考えることがあると思います。 「Family.scss」はそんな面倒な指定を楽にしてくれるスタイルシートで、利用するためにはSass(SCSS)を使っているのが条件にはなりますが、ちょっと複雑そうな指定もわかりやすく容易な記述で指定することができます。 使い方 まず、必要なSCSS (Family.scss) を配布サイト上部にある「DOWNLOAD」ボタン、またはGitHubからダウンロードするなどして読み込みます。 あとは、普段mixinを使うときと同様で@include mixin-name(n)という感じで記述すれば利用することができ、引数の部分は場合によっては空に

    Sass(SCSS)のmixinを使って、:nth-child疑似クラスなどを指定しやすくする便利スタイルシート「Family.scss」 - NxWorld
  • Sassを捨ててPostCSSに移行したのでそのときの工程メモ - Qiita

    CSSはずっとSassを使っていて、gulp-sassでコンパイルする感じの僕でしたがPostCSSに移行してみたのでそのときの工程をメモとして残しておきます。 PostCSSとは何か なぜSassからPostCSSに移行したのか むしゃくしゃしてやった。 ほんとは ただ単にSassを使っているということに飽きたってのが1点。 あとはSassの機能において僕はmixinとかextendとか正直必要ないなって考えていて、変数であるとかネストであるとかimportであるとか(CSSのimportじゃない方の)が使えればそれで良いってのがあって、そうなるとPostCSSの必要な機能だけ読み込んで使うっていうスタンスは良いなっていうのが2点目。 あと結局Sass使ってそのあとにautoprefixerとminifyは確実にやるのでそこでSass以外のツールでCSSのことをあれこれしちゃってるのでそ

    Sassを捨ててPostCSSに移行したのでそのときの工程メモ - Qiita
  • The Blog | Welcome to Adobe Blog

    The Blog | Welcome to Adobe Blog アドビのブログでは、Creative Cloud、Document Cloud、Experience Cloudの最新情報や役に立つ情報を紹介しています。

    The Blog | Welcome to Adobe Blog
  • CSSfmtをつくった話、もしくは本質的な問題解決とは - Qiita

    CSSfmtという、CSSとSCSSのコードを自動整形するツールをつくった。 使い方はREADMEを見たらわかると思う。Atom, Sublime Text, Vim, Emacs用のプラグインがあるので、エディタで使うのがおすすめ。コマンドラインからも使える。 atom-cssfmt sublime-cssfmt vim-cssfmt cssfmt.el AtomでCSSfmtが動いている様子: なぜつくったのか チーム開発において、コードのフォーマットが統一されていないことがある。 フォーマットの小さな違いはわざわざ指摘するのもめんどうだし、指摘されても嫌な気分になる。なので、コードをあるルールに従って自動で整形するツールの導入は必須だと思う。 CSSコードの整形ツールはいくつかある。CSS BeautifyやCSScomb、stylelintでも可能だ。 これらのツールとCSSfmt

    CSSfmtをつくった話、もしくは本質的な問題解決とは - Qiita
  • SCSSと付き合う上でやって(知って)よかったこと8選 - Qiita

    なんだかノウハウ溜まってきた感あるのでまとめる。 1. prefixの付与はautoprefixerに任せる方が良かった 基的な部分だが、SCSSになんでもかんでもやらせようとするのはよくない。 例えば下記のようなprefix div { -webkit-box-shadow: 0px 0px 10px rgba(255,0,0,.5); -moz-box-shadow: 0px 0px 10px rgba(255,0,0,.5); box-shadow: 0px 0px 10px rgba(255,0,0,.5); } sass/scssであればCompass、Bourbon、lessであればLESSPrefixerなど、mixinとしてprefix付与を提供してくれるライブラリがあったりするが、これよりもautoprefixerによる解決をおすすめしたい。 gulpなどを導入していな

    SCSSと付き合う上でやって(知って)よかったこと8選 - Qiita
  • 知らないと損するSassの組み込み関数徹底解剖 | Yuhiisk

    Sassを使うにあたって、覚えておくと必ず幸せになれる組み込み関数というものがある。 自分で定義できる @function とは違い、Sassに最初から備わっているものだ。 Sass自体の機能だから、もちろんCompassなどのフレームワークを使用する際も使うことができる。 普段Sassを使っているひとでも、Sassの組み込み関数については詳しく知らない人も多いのではないだろうか。 これを自由に使いこなすことが出来ればコーディングが楽になることは間違いない。 改めてドキュメントを見直すと自分の知らないものもあったため、今回全てをまとめてみた。 すぐに試してみたい人はこちらのデモを試してみるといい。

    知らないと損するSassの組み込み関数徹底解剖 | Yuhiisk
  • SCSSと付き合う上でやって(知って)よかったこと8選 - Qiita

    なんだかノウハウ溜まってきた感あるのでまとめる。 1. prefixの付与はautoprefixerに任せる方が良かった 基的な部分だが、SCSSになんでもかんでもやらせようとするのはよくない。 例えば下記のようなprefix div { -webkit-box-shadow: 0px 0px 10px rgba(255,0,0,.5); -moz-box-shadow: 0px 0px 10px rgba(255,0,0,.5); box-shadow: 0px 0px 10px rgba(255,0,0,.5); } sass/scssであればCompass、Bourbon、lessであればLESSPrefixerなど、mixinとしてprefix付与を提供してくれるライブラリがあったりするが、これよりもautoprefixerによる解決をおすすめしたい。 gulpなどを導入していな

    SCSSと付き合う上でやって(知って)よかったこと8選 - Qiita