検索
ホームページウェブフロントエンドCSSチュートリアル2017 年に学ぶ価値のある 3 つの新しい CSS 機能 (推奨)

height: 1.76em;">多くの CSS の新機能の中で、今年採用された 3 つの新機能が、私を興奮を抑えきれなくさせてくれます。

1. 機能クエリ

少し前に、私は One CSS を書きました私が本当に楽しみにしている機能は、機能クエリに関するもので、基本的には既に存在していると言えます。Internet Explorer (Opera Mini を含む) を除く主流のブラウザーをサポートしています。

機能クエリは、@supports ルールを使用して許可されています。条件ブロック内の CSS。この条件ブロックは、現在のユーザー エージェントが CSS property キーと値のペアをサポートしているかどうかを確認します。サポートされている場合、コンテンツは有効になります。これは、ブラウザーが Flexbox をサポートしている場合の単純な例です。 : flex -

@supports ( display: flex ) {
  .foo { display: flex; }
}

さらに、operators like and not を使用すると、たとえば、ブラウザが古いフレックスボックス構文のみをサポートしているかどうかを検出することもできます -

@supports ( display: flexbox ) 
          and 
          ( not ( display: flex ) ) {
  .foo { display: flexbox; }
}

Support

2017 年に学ぶ価値のある 3 つの新しい CSS 機能 (推奨)

2. TablesLayout

CSS テーブル レイアウト モジュールは、テーブル ベースのレイアウトを作成するためのシステムを定義しますが、ページ レイアウト 専用に設計されています。

項目の位置を明確にする

グリッドは、CSS 内のテーブル コンテナー (display:grid によって作成) とテーブル項目 (子コンポーネント) で構成されており、テーブル項目の位置と順序を明確に整理できます。 、タグに関係なく (HTML タグを参照)

たとえば、この記事で示されている聖杯レイアウトに CSS テーブルを使用して記事を書きました。このモジュールを使用して有名な「聖杯レイアウト」を作成します。

その背後にある CSS はわずか 31 行です -

.hgheader { grid-area: header; }
.hgfooter { grid-area: footer; }
.hgmain { grid-area: main; }
.hgleft { grid-area: navigation; }
.hgright { grid-area: ads; }

.hg {
    display: grid;
    grid-template-areas: "header header header"
                         "navigation main ads"
                         "footer footer footer";
    grid-template-columns: 150px 1fr 150px;
    grid-template-rows: 100px 
                        1fr
                        30px;
    min-height: 100vh;
}

@media screen and (max-width: 600px) {
    .hg {
        grid-template-areas: "header"
                             "navigation"
                             "main"
                             "ads"
                             "footer";
        grid-template-columns: 100%;
        grid-template-rows: 100px 
                            50px 
                            1fr
                            50px 
                            30px;
    }
}
2017 年に学ぶ価値のある 3 つの新しい CSS 機能 (推奨)柔軟な長さ

CSS グリッド モジュールでは、テーブル コンテナーの残りのスペースを均等に分割する新しい長さ単位が導入されています。たとえば、聖杯レイアウトで、メイン パーティションが 2 つのサイドバーの間のすべてのスペースを占めるようにするための簡単なコードを書きました。 this -

.hg {
    grid-template-columns: 150px 1fr 150px;
}

Gap

grid-row-gap、grid-column-gap、grid-gap プロパティを使用して、これらのプロパティの間隔を明示的に定義できます。値は データ型

、これはコンテンツ領域のサイズのパーセンテージです

たとえば、%5の間隔が必要な場合は、次のように記述できます -

.hg {
    display: grid;
    grid-column-gap: 5%;
}

サポート最も初期のCSSグリッドモジュールでした。今年の 3 月にブラウザでサポートされました。

3. ネイティブ

変数

2017 年に学ぶ価値のある 3 つの新しい CSS 機能 (推奨) 最後にお話したいのは、ネイティブ CSS 変数です。このモジュールでは、作成者

が CSS プロパティのような値を割り当てることができる変数

を定義する方法を紹介します。 たとえば、テーマカラーがスタイルシートの多くの場所で使用されている場合、実際の値を直接何度も書き込む代わりに、テーマカラーを抽象化して変数に保存し、その変数を参照できます。

:root {
  --theme-colour: cornflowerblue;
}

h1 { color: var(--theme-colour); }  
a { color: var(--theme-colour); }  
strong { color: var(--theme-colour); }

これらのことは現在、SASS などの CSS プリプロセッサで可能ですが、CSS 変数はブラウザーでアクティブになります。つまり、それらの値はリアルタイムで更新することができます。たとえば、上の例の --theme-color 属性の値を変更するには、これを実行するだけです -

const rootEl = document.documentElement;  
rootEl.style.setProperty('--theme-colour', 'plum');

サポート

サポートはどうですか?

ご覧のとおり、現時点ではどの機能もすべてのブラウザーでサポートされていません。そのため、本番環境で安心して使用するにはどうすればよいでしょうか?答えは「プログレッシブ・エンハンスメント」です。昨年、私はフロンティア カンファレンスで、CSS に関連する進歩的な拡張を行うことについて話しました。今、ここに置きます -

2017 年に学ぶ価値のある 3 つの新しい CSS 機能 (推奨)

以上が2017 年に学ぶ価値のある 3 つの新しい CSS 機能 (推奨)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Google Fontsをタグ付けし、Goofonts.comを作成する方法Google Fontsをタグ付けし、Goofonts.comを作成する方法Apr 12, 2025 pm 12:02 PM

Goofontsは、開発者妻とデザイナーの夫によって署名されたサイドプロジェクトであり、どちらもタイポグラフィの大ファンです。 Googleにタグを付けています

時代を超越したWeb開発記事時代を超越したWeb開発記事Apr 12, 2025 am 11:44 AM

Pavithra Kodmadは、彼らが変化したWeb開発に関する最も時代を超越した記事のいくつかであると考えていることについて、人々に推奨事項を求めました

セクション要素との取引セクション要素との取引Apr 12, 2025 am 11:39 AM

2つの記事がまったく同じ日に公開されました。

graphQlの練習JavaScript APIでクエリをクエリしますgraphQlの練習JavaScript APIでクエリをクエリしますApr 12, 2025 am 11:33 AM

GraphQL APIの構築方法を学ぶことは非常に挑戦的です。ただし、10分でGraphQL APIを使用する方法を学ぶことができます!そして、それは私が完璧になったことがあります

コンポーネントレベルのCMSコンポーネントレベルのCMSApr 12, 2025 am 11:09 AM

コンポーネントがデータが近くに住んでいる環境に住んでいる場合、視覚コンポーネントと

円にタイプを設定します...オフセットパス付き円にタイプを設定します...オフセットパス付きApr 12, 2025 am 11:00 AM

ここでは、Yuanchuanからの合法的なCSSの策略があります。このCSSプロパティオフセットパスがあります。むかしむかし、それはモーションパスと呼ばれ、その後改名されました。私

CSSで「戻る」ことは何をしますか?CSSで「戻る」ことは何をしますか?Apr 12, 2025 am 10:59 AM

Miriam Suzanneは、このテーマに関するMozilla開発者のビデオで説明しています。

現代の恋人現代の恋人Apr 12, 2025 am 10:58 AM

私はこのようなものが大好きです。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン