タグ

cssに関するsonesoneのブックマーク (137)

  • CSSのカスタムプロパティで快適な「vw」ライフを送ろう | ブログ | 静岡県のホームページ制作 | 6666666 セブンシックス

    CSSで要素の幅などを指定するとき、「vw」という単位があります。そのままだとちょっとクセの強い「vw」ですが、CSSのカスタムプロパティとJavaScriptを用いればもっと安心して使えるようになるよ。というお話です。 「vw」が破綻を招くワケ 「vw」は、便利ですが使いどころによってはレイアウトの崩壊を引き起こします。まず、「vw」を理解するために「%」との違いや、その問題点についてお話しします。 親要素を基準とした「%」 「%」は、CSSでよく利用される単位のひとつです。親要素の幅を100%としたときに何%になるか、を指定します。例えば、親要素の幅が500pxのとき、子要素に「width: 10%;」と指定すれば、500pxの10%なので50px幅になります。 ビューポートを基準とした「vw」 次に「vw」ですが、こちらはビューポートの幅を100%としたときの相対的なサイズを指定しま

    CSSのカスタムプロパティで快適な「vw」ライフを送ろう | ブログ | 静岡県のホームページ制作 | 6666666 セブンシックス
    sonesone
    sonesone 2024/01/23
    100vwでスクロールバーの幅も含まれてしまう問題をどう解決するか。→JSでclientWidthをとってきて、cssのvarに置き換え
  • CSSだけでスクリーンサイズやフォントサイズを取得、CSSの三角関数tan(atan2())はcalc()ではできない計算もできる

    CSSで便利な機能の1つがcalc()、ページのレイアウト、要素やフォントのサイズ設定に活躍します。特に異なる単位で加算減算(calc(1rem + 1px))できることが便利ですが、乗算除算(calc(1rem / 1px)はできません。 そこでCSSの三角関数です。すべてのブラウザにサポートされているatan2()を使用すれば、異なる単位で計算ができます。tan(atan2())を使用して、スクリーンサイズやフォントサイズを取得するテクニックを紹介します。 CSS Type Casting to Numeric: tan(atan2()) Scalars br Jane Ori (@Jane0ri) 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに tan(atan2())は単なる数値である 追記: 三角関数を学び直

    CSSだけでスクリーンサイズやフォントサイズを取得、CSSの三角関数tan(atan2())はcalc()ではできない計算もできる
    sonesone
    sonesone 2023/10/24
  • CSSでスクロールバーの有無によるがたつきをなくす: Days on the Moon

    この記事はCSS Advent Calendar 2022の9日目の分です。 CSSのボックスモデルにおいては、ボーダーの内辺とパディングの外辺の間にスクロールバーが配置されます。最近はどのOSでもオーバーレイスクロールバー(スクロールバーが内容の前面に覆いかぶさるようなもの)が主流となり、スクロールバーが存在してもしなくても内容の幅が変わらないようになっています。一方、クラシックスクロールバー(スクロールバーが常に表示されるようなもの)が使われる環境では、overflow: autoな要素において内容がはみ出すときとはみ出さないときで内容の幅が変わってきます。 クラシックスクロールバーが使われる環境でも内容の幅を一定に保ちたいという場合は、scrollbar-gutterプロパティを使います。scrollbar-gutter: stableを指定すれば、スクロールバーが表示されないときで

    sonesone
    sonesone 2022/12/10
  • CSSの100vhがスマホで高さいっぱいにならない問題はこれで解決! CSSの新しいビューポート単位の使い方と注意事項

    先日リリースされたChrome 108で、CSSの新しいビューポート単位(svh, lvh, dvhなど)がサポートされました。SafariとFirefoxではすでにサポートされていましたが、Chromeでもサポートされたのは朗報です。 この新しいビューポート単位の基的な使い方と注意事項を紹介します。 The large, small, and dynamic viewport units by Bramus 下記は各ポイントを意訳したものです。 ※元サイト様のライセンスに基づいて翻訳しています。 はじめに おさらい: ビューポートとその単位 新しいビューポート単位の必要性 注意事項 リソース はじめに 先日リリースされたChrome 108で、動的なバーがあるスマホのビューポートを考慮したCSSの新しいビューポート単位がサポートされました。SafariとFirefoxではすでにサポート

    CSSの100vhがスマホで高さいっぱいにならない問題はこれで解決! CSSの新しいビューポート単位の使い方と注意事項
    sonesone
    sonesone 2022/12/08
  • レスポンシブ対応のレイアウトやUIコンポーネントの実装が簡単! min(), max(), clamp() の便利な使い方を詳しく解説

    CSSの比較関数が主要ブラウザすべてにサポートされてから早2年が経ちました。これらの比較関数は、今まではJavaScriptを使用しないとできなかったこと、メディアクエリで複雑に実装していたことをシンプルなCSSで実装できます。 最近のWebサイトで使用されている、CSSの比較関数 min(), max(), clamp() の便利な使い方を紹介します。 Use cases for CSS comparison functions by Ahmad Shadeed 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに 比較関数の使用例: 流動的なサイジングとポジショニング 比較関数の使用例: 装飾要素 比較関数の使用例: 流体ヒーローの高さ 比較関数の使用例: ローディングのバー 比較関数の使用例: コンテンツの区切り線 比

    レスポンシブ対応のレイアウトやUIコンポーネントの実装が簡単! min(), max(), clamp() の便利な使い方を詳しく解説
    sonesone
    sonesone 2022/10/13
  • 便利な無料ツールが登場! Webサイトで使用しているCSSや自分が書いたCSSを詳細に解析してくれる -CSS Analyzer

    1クリックで、Webサイトで使用しているCSSや自分が書いたCSSを詳細に解析してくれる無料ツールを紹介します。 CSSの検証としておかしなスタイル定義・同じスタイル定義・一貫性のないスタイル定義などを見つけたり、スタイルガイドの作成にも役立ちます。 CSS Analyzer CSS Analyzer -GitHub CSS AnalyzerはWallace CLI, constyble, color-sorterなどの便利ツールをリリースしているProject WallaceのCSS解析ツールです。MITライセンスで、商用プロジェクトでも無料で利用できます。 Webサイトで使用しているCSSファイルや自分が書いたCSSのコードを詳細に解析してくれます。オンラインツールとして簡単に利用でき、GitHubでソースが公開されているので、ローカル環境でも利用できます。 さっそくオンライン版で試し

    便利な無料ツールが登場! Webサイトで使用しているCSSや自分が書いたCSSを詳細に解析してくれる -CSS Analyzer
    sonesone
    sonesone 2022/07/26
  • 【CSS】「これどうやる?」アップルやテスラのWebレイアウト再現テクニック集

    AppleやNike、Teslaといった誰もが知る大企業のWebレイアウトを、CSSで再現するテクニック集がTwitterで投稿され、話題となっています。 CSSのみで表現できる目からウロコのテクニックが中心で、あの驚くようなエフェクトも実はシンプルな数行のコードで表現されていたりします。 コピペできるCSSコードと一緒に、デモサンプルも確認してみましょう。CSSで解決できるテクニック、増えています。 「これどうやる?」アップルやナイキなど大企業Webサイトで利用中のレイアウト再現CSSテクニック集 ノーコードでレスポンシブなデザインを構築できる Builder.io のCEO @Steve8708は、有名サイトで使われている魅力的なレイアウトが、どのように作成されているのか、コピー用のサンプルコードと一緒にみじかい動画で詳しく紹介しています。 ユーザーの視線を奪うアニメーションやレイアウ

    【CSS】「これどうやる?」アップルやテスラのWebレイアウト再現テクニック集
  • IEよ、さようなら😂 IEをサポート外にした時に使用できるCSSのプロパティや機能のまとめ

    object-fitの使い方: レスポンシブ対応、動画や画像をブラウザいっぱいに表示するCSSのテクニック prefers-color-scheme media query prefers-reduced-motion media query text-emphasisプロパティ text-stroke, text-fill font-variation-settingsプロパティ will-changeプロパティ CSS Grid Layout (level 1) IEでCSS Gridを使用する時の既知の問題 IE 11ではプレフィックス「-ms-」が必要。 異なるプロパティ名(grid-template-columnsと-ms-grid-columns)が存在する。 レイアウトにgrid-rowsが必要。 Chrome, Firefoxとは、グリッドの数え方が異なる。 参考: IEで

    IEよ、さようなら😂 IEをサポート外にした時に使用できるCSSのプロパティや機能のまとめ
    sonesone
    sonesone 2022/06/14
  • CSSでfont-sizeをレスポンシブ対応にする最新テクニック! clamp()関数で定義する便利ツール -Min-Max Calculator

    Webサイトをレスポンシブ対応にする時、メディアクエリを使用するのも一つの方法ですが、CSSのclamp()関数を使用すると、最小値と最大値を定義してその間の値は流動的にすることができます。 たとえば、小さいスクリーンでは最小値の16px、スクリーンが大きくなるにつれ、最大値の24pxになるまで少しずつ大きくなる、という感じです。 このclamp()関数を使用して、CSSでレスポンシブ対応のフォントサイズやレイアウトを簡単に定義できるツールを紹介します。ツールはオンラインでも、ローカルでも利用できます。 Min-Max Calculator Min-Max Calculator -GitHub Min-Max Calculatorの特徴 Min-Max Calculatorの使い方 Min-Max Calculatorの特徴 Min-Max Calculatorは、レスポンシブ対応にする時

    CSSでfont-sizeをレスポンシブ対応にする最新テクニック! clamp()関数で定義する便利ツール -Min-Max Calculator
    sonesone
    sonesone 2022/05/31
  • CSSの新しい単位「lvh」「svh」これでiOSのSafariで100vhがビューポートの高さではない仕様に対応できる

    Safari 15.4(最新は15.5)で新しいビューポート単位「lvh」「svh」がサポートされました。ビューポートを基準にした単位で、この単位を使用することで、iOSのSafariで100vhがビューポートの高さではないという仕様に対応できます。 今まではCSSの-webkit-fill-availableがその対応方法でしたが、ネストされた要素やcalc()内では使用できません。新しいビューポート単位を使用すると、そういった問題もなくなります。 The Large, Small, and Dynamic Viewports by Bramus 2021年の記事ですが、Safari 15.4でこれらの新しいビューポート単位がサポートされたので、このタイミングで紹介します。 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじ

    CSSの新しい単位「lvh」「svh」これでiOSのSafariで100vhがビューポートの高さではない仕様に対応できる
  • いざという時に使える13のHTML&CSS Tips集 | BUILD Journal

    いざという時に使える13のHTML&CSS Tips集Update2023.05.12Release2023.04.13Coding HatenaにシェアするTwitterにツイートするPocketにストックするFeedlyに登録する いざという時のために覚えておくと便利なHTMLCSSのTipsを13個紹介します。何かで困った時に読み返してみてください。何かでお役にたてると思います。 テキストの円形回り込み See the Pen shape-outside by Kobayashi (@Pulp_Kobayashi) on CodePen. 円形の画像の縁に沿ってテキストを回り込ませるCSS Tips。実際には画像の縁を判定して回り込んでいるのではなく、shape-outsideプロパティを使用し、circle(50%)を指定することで、要素の回り込みの形状を円形にしています。 CS

    いざという時に使える13のHTML&CSS Tips集 | BUILD Journal
    sonesone
    sonesone 2022/05/10
  • Webページでスクロールできないようにする - CSS Positionプロパティを利用 (CSS Tips)

    CSSを利用して、Webページでスクロールできないようにする方法を紹介します。 概要 こちらの記事では、スクロールやタッチ、キーダウンイベントをキャンセルすることでスクロールできないようにする方法を紹介しました。 この記事では別の方法として、CSSのPositionプロパティを利用してページをスクロールできないようにする方法を紹介します。 方法 CSSでbodyのスタイルを position:fixed に設定し、top bottom left right の値を0にすることでWebブラウザのビューポートのサイズをコンテンツのサイズに設定することでスクロールできない状態にします。 例 コード 下記のHTMLファイルを作成します。 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <script ty

    Webページでスクロールできないようにする - CSS Positionプロパティを利用 (CSS Tips)
    sonesone
    sonesone 2022/03/18
    スクロールをさせないようにする
  • 画面が縦向きか横向きかを知る - シンプルシンプルデザイン JavaScript

    ブラウザ、モバイルファースト、メディアクエリー、マルチ画面、タブレット・・・ 想定すべき画面サイズ、利用シーンに適した情報のコントロールが崩壊しつつある。 というくだりは、最適な対応手段が見出せるまで言い続けてしまうかもしれない。 PCとタブレットの一体型が各メーカーから発売され、店頭で実機を触ってみた。 これまでの概念モデルとは異なる、あらたな概念モデルを創出する必要があると、直感的に強い印象を持った。 具体的に「何」と表現することは難しいが、あえていうなら、オフラインとオンラインのつながりはこれまで以上に加速し、これまでにない使い方が次々登場し、利用シーンが一気に飛躍すると思う。 「ビックウェーブを見つけた!」と言っては過言だろうか。 ただ「これだ!」という直感があるのに何もできないもやもやが辛い。 さて題。 キーボードで操作中でも画面タッチができることから、どうやらtouchイベン

    sonesone
    sonesone 2022/03/18
    tabletの縦横判別。
  • CSSは確実に進化している! 変数、条件分岐、ループ、論理演算など、ロジックに記述するCSSの実装テクニック

    一昔前のCSSと比較すると、ここ数年でCSSはかなり進化しました。calc()で数式が扱えるようになり、変数、条件分岐、ループ、論理演算なども使用できます。CSSでロジックをどう記述するのか、ブログラミング言語的な実装を紹介します。 Writing Logic in CSS by Daniel Schulz TwitterCSSがプログラミング言語なのかと話題になっていました。その前から記事の翻訳に取り組んでいたのですが、非常に興味深い記事でした。CSSは宣言型プログラミング言語ですが、JavaScriptのような命令型の要素も増えてきて、一昔前からかなり進化しています。 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに CSSの制御構造 CSSの実装テクニック 終わりに はじめに CSSは、スタイルのシステムに特化

    CSSは確実に進化している! 変数、条件分岐、ループ、論理演算など、ロジックに記述するCSSの実装テクニック
  • CSSのみでdisplay:noneの要素をフェードイン/フェードアウトさせる方法|ブログ|ウェブスタジオTANI

    マウスオーバーやクリック時など、何らかの処理をしたタイミングで、 display: none;されている要素にアニメーション(フェードインなど)をつけたいことが多いのでメモ。 ※-moz-や-webkit-は省略しているので、適宜つけてください。 @keyframes fadeIn { 0% { display: none; opacity: 0; } 1% { display: block; opacity: 0; } 100% { display: block; opacity: 1; } } .element { display: none; opacity: 0; } .element.-visible { display: block; opacity: 1; animation: fadeIn 0.3s ease-in 0s forwards; } あとは、Javascript

    CSSのみでdisplay:noneの要素をフェードイン/フェードアウトさせる方法|ブログ|ウェブスタジオTANI
  • 今までのCSS本とはかなり異なる! 現在主流の実装・設計・管理方法を徹底解説した良書 -ざっくりつかむ CSS設計

    CSSの解説書はたくさんありますが、今までのCSSとはかなり異なる面にフォーカスされたCSS設計についての解説書を紹介します。 かなり実践的な解説書です、CSSの何に気をつけて、CSSをどのように書き、CSSをどのように管理するとよいか、現在主流の実装・設計・管理方法について、最適解となるためのアプローチや思考プロセスが詳しく解説されています。 書は中・上級者向けの内容をていねいに詳しく解説したものです。CSSの初心者向けの基礎知識やサンプルなどはありませんが、CSSに取り組んでいる人であれば大丈夫だと思います。CSSの実装・設計・管理の方法にフォーカスされ、プロジェクトレベルでのCSS設計について解説されています。 著者の高津戸氏とはかなり前にお会いしたことがあるのですが、イラストにそっくりな印象がありますね。

    今までのCSS本とはかなり異なる! 現在主流の実装・設計・管理方法を徹底解説した良書 -ざっくりつかむ CSS設計
    sonesone
    sonesone 2021/12/24
  • この実装方法は巧い! コンテンツが少ない量でもフッタを一番下に配置するCSSのテクニック

    ページのコンテンツが少なくても、フッタを一番下に配置するCSSのテクニックを紹介します。コンテンツが多ければ、成り行きで配置されます。 フッタの高さは自由で、CSS GridやFlexboxやcalc()は使用せず、追加のラッパーも必要ありません。シンプルなHTMLに、数行のCSSで簡単に実装できます。 A Clever Sticky Footer Technique by Chris Coyier 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに コンテンツが十分な量でなくてもフッタを一番下に配置する方法 はじめに 「スティッキーフッタ」というと、ページをスクロールした時にぴたっと固定表示されるposition: sticky;を思い浮かべる人が多いと思います。 しかし、それはここで話すこととはすこし異なります。 「ス

    この実装方法は巧い! コンテンツが少ない量でもフッタを一番下に配置するCSSのテクニック
    sonesone
    sonesone 2021/11/30
  • CSSでスクロールが連鎖するのを回避する古い方法とoverscroll-behaviorを使った新しいテクニック

    スクロールの連鎖(スクロールチェーン)とは、ページ上にスクロールするコンテンツがあり、そのコンテンツをスクロールして終点に到達するとメインのコンテンツもスクロールしてしまう現象です。 モーダルにスクロールがある場合、スマホのナビゲーションにスクロールがある場合、固定サイドバーにスクロールがある場合など、スクロールチェーンしないように実装するCSSのテクニックを紹介します。 Prevent Scroll Chaining With Overscroll Behavior by Ahmad Shadeed 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに スクロールチェーンとは 古い解決方法 今の解決方法: overscroll-behavior overscroll-behaviorの使用方法 終わりに はじめに posi

    CSSでスクロールが連鎖するのを回避する古い方法とoverscroll-behaviorを使った新しいテクニック
  • CSSの数学関数min()、max()、clamp()の基本的な使い方

    IEをサポートから外すと、CSSの便利な新しいプロパティが使用できます。その中の1つ、いや3つがmin(), max(), clamp()です。 数学関数といえばcalc()が便利ですが、さらに便利なのがこの3つです。要素の幅指定、padding値の管理、font-sizeの定義など、レスポンシブ対応で大活躍します。min(), max(), clamp()の基的な使い方を紹介します。 min(), max(), and clamp(): three logical CSS functions to use today by Una Kravets CSSの関数のさらにいろいろな使い方は、下記をご覧ください。 CSSの比較関数 min(), max(), clamp()の使い方を詳しく解説 CSSのcalc()関数を使うとスゴイ便利!ページのレイアウト、要素やフォントのサイズ指定など実装

    CSSの数学関数min()、max()、clamp()の基本的な使い方
    sonesone
    sonesone 2021/11/05
  • 図で理解する Flexbox

    Flexboxはレイアウト組む上でとても便利だが、justifyだとかalignだとか名前と意味の対応が曖昧で毎回調べていた。 仕組み・使い方を理解しようと思い、図を使って整理してみた。 ※ CSS Grid についても整理してみました Flexbox Flexboxは縦・横に要素を並べられるレイアウト方法です。 Flexboxを使うことにより、縦・横に並べるだけでなく、並べた要素の中央寄せ・上寄せなど細かな位置も調整できます。 コンテナ・アイテム Flexboxを使う上で必要となる要素が「Flexコンテナ」と「Flexアイテム」です。 Flexコンテナの中にFlexアイテムを複数並べてレイアウトします。 <div class="container"> <div class="item">1</div> <div class="item">2</div> <div class="item"

    図で理解する Flexbox
    sonesone
    sonesone 2021/08/16