国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目次
GSSの使用を開(kāi)始するには、Bowerを介してインストールするか、githubを介してzipファイルとしてダウンロードする必要があります。その後、GSSスタイルシートは、a
は:
キャッソワリー制約アルゴリズムの紹介
github経由でzipファイルとしてバージョン2.0.0をダウンロードすることもできます。
GSS(グリッドスタイルシート)
GSS(グリッドスタイルのシート)とは?
GSSはオープンソースですか?
GSSの將來(lái)は何ですか?
キャッソワリーアルゴリズムの計(jì)算制限
ホームページ ウェブフロントエンド CSSチュートリアル GSSの紹介:グリッドスタイルシート

GSSの紹介:グリッドスタイルシート

Feb 23, 2025 am 09:26 AM

Introducing GSS: Grid Style Sheets

GSSの紹介:グリッドスタイルシート

最近、HTMLとCSSの世界でグリッドスタイルのシート(GSS)を聞いたことがあるかもしれません。 GSSはCSSレイアウトを再想像し、ブラウザのレイアウトエンジンを cassowary Constraint Solverを活用するエンジンに置き換えます。その言葉を理解していなかったあなた方は…こんにちは、歓迎!

GSSはより良い未來(lái)を約束します。 GSSは、相対的なポジショニングとサイジングを約束します。 GSSは、ある1行のコードで別の要素を別の要素に集中させることを約束します。 GSSは配信します。問(wèn)題は、どのように?

です この記事では、GSSの簡(jiǎn)単な歴史と、それが提供する機(jī)能の詳細(xì)な概要について説明します。また、制約ベースのレイアウト、Cassowary Constraint AlgorithmのGSSを調(diào)べて、GSSのインストールと使用のプロセスを説明します。

W3Cやブラウザが追いつくのを待たない人たちは、GSSである謎を説明しながら、そこに固執(zhí)して細(xì)心の注意を払うことをお?jiǎng)幛幛筏蓼?。そのメモで、少し歴史から始めましょう。

キーテイクアウト

GSSの使用を開(kāi)始するには、Bowerを介してインストールするか、githubを介してzipファイルとしてダウンロードする必要があります。その後、GSSスタイルシートは、a

タグにtype = text/gssを追加するか、a
  • >を使用してロードできます。 簡(jiǎn)単な歴史
  • GSSは、Dan Tocchiniが創(chuàng)設(shè)者兼CEOとしてのグリッドの作成です。これは、なぜそれほどグリッドではないスタイルシートがグリッドスタイルのシートと呼ばれるのかと答えています。

    ウェブ開(kāi)発者とフロントエンドテクノロジーとの間の戦爭(zhēng)は、ウェブにアイデアを提示することが何年も続いています。 CSSは、過(guò)去10年間に勝利していることが証明されています。ただし、時(shí)間とともに進(jìn)化していないツールを使用してますます複雑なユーザーインターフェイスを構(gòu)築することは、Web開(kāi)発者が定期的に行うことが期待されることです。たとえば、要素をCSSで垂直に中心にすることは、特に可変高さの要素を使用して、最も単純なタスクではありませんでした。

    FlexBoxは最新のソリューションの1つですが、そこで小さな変更でさえ、HTMLコンテンツとCSSプレゼンテーションの奧深くに進(jìn)み、変更を加える必要があります。

    GSSがアリーナを取る時(shí)が來(lái)ました。 GSSはこれらの問(wèn)題やその他多くの問(wèn)題に取り組んでいます - 開(kāi)発者が10年以上抱えてきた問(wèn)題。

    本質(zhì)的に、GSSはCSSプリプロセッサであり、cassowary.jsを悪用するJavaScriptランタイムです。まだ知らない人、cassowary.jsは、cocoa autolayoutで使用しているJavaScript Port Appleです。

    GSSとCassowaryの両方が制約プログラミングに基づいているため、CSSのような宣言言語(yǔ)に力を與えるのに理想的です。制約プログラミングは、Web開(kāi)発者が「What」を宣言し、「方法」を數(shù)學(xué)的ソルバーに任せることに関心があるパラダイムです。

    制約プログラミングは、実裝ではなく意図に焦點(diǎn)を當(dāng)てています

    背景情報(bào)をいくつか確立したので、GSSオファーの機(jī)能に進(jìn)みましょう。 GSSの概要

    CSSの最大の問(wèn)題の1つは相対性です。 CSS要素には、パディング、高さ、幅、フロート、マージン、境界線(xiàn)、アウトラインなどのプロパティの終わりのないリストがあると期待できますが、この情報(bào)は、ページ上の他の要素に関連して要素がどこにあるかを教えてくれません(またはページ全體)。また、エンドレスリストは、異なる畫(huà)面サイズで要素が表示される場(chǎng)所にも答えません。

    これは、GSSの最初の機(jī)能に私たちをもたらします。レイアウトが何であるかを定義します。無(wú)數(shù)の時(shí)間を費(fèi)やし、レイアウトの構(gòu)築方法を戦略化する時(shí)代は終わりました。

    GSSがcassowary.jsを利用していることをすでに説明しているため、GSSのもう1つの優(yōu)れた機(jī)能を次に示します。要素は、1つのコードを持つ他の任意の任意の中心にできます。これにより、多くの回避策が不要になり、過(guò)去のものがあります。 たとえば、

    たとえば、サイトのページの右側(cè)にある見(jiàn)出しと垂直にサブスクライブボタンを追加する場(chǎng)合は、次のコードを使用します。

    別の機(jī)能:GSSは、フロート、テーブルセル、クリアフィックス、および水平/垂直センタリングを廃止します。フロート自體がアプリケーションレイアウトに理想的ではないと言っているため、フロートである危険な落とし穴に別れを告げます。

    「ウェブサイトが簡(jiǎn)単なドキュメントから複雑でインタラクティブなアプリケーション、ドキュメントレイアウト用のツールに進(jìn)化したため。フロートは、アプリケーションレイアウトに必ずしも適していませんでした?!?

    - W3Cグリッドレイアウトモジュール(作業(yè)ドラフト)
    .subscribe-button[right] == <span>::window[width];
    </span>.subscribe-button[center-y] == .header[center-y]<span>;</span>

    重要なCSS機(jī)能はどうですか?重要ですか? GSSの4番目の機(jī)能は同様のことを行います。GSSは制約階層を使用して、制約を強(qiáng)度で優(yōu)先順位付けします。ここでは、4つの組み込み強(qiáng)度レベルについて話(huà)しています:


    !弱い

    !medium

    !strong
    • を要求します
    • requireは、制約が保持されることを保証する
    • 特別
    • 強(qiáng)度であり、それがそうでない場(chǎng)合、すべてが壊れることに注意してください。慎重かつ頻繁に使用することをお?jiǎng)幛幛筏蓼?
    • 強(qiáng)度のレベルがリストの下に上昇し、実行中により強(qiáng)い制約がより高い優(yōu)先度を與えられます。例を見(jiàn)てみましょう:

    ここまで行ったことがあります。制約ベースのレイアウトを今すぐ見(jiàn)てみましょう。 制約ベースのレイアウトのGSS

    制約は、基本的に、保持される可能性のある2つ以上の変數(shù)間の関係です。要素のすべての數(shù)値特性は、制約される資格があります。例を次に示します:

    .subscribe-button[right] == <span>::window[width];
    </span>.subscribe-button[center-y] == .header[center-y]<span>;</span>
    • pはセレクター
    • と呼ばれます
    • line-heightは、GSSが
    • の値を計(jì)算するプロパティです。
    • []は、プロパティへのアクセスに使用されます
    • =不平等制約を定義します
    • 10および20は、ピクセル
    • の數(shù)値値です

    上記の例では、両方の制約が有効になります。以下は、保持されない制約の例です。

    #light[years] == <span>50 !weak;
    </span>#light[years] == <span>20 !medium;
    </span>#light[years] == <span>35 !strong;
    </span>
    <span>/* #light[years] will hold the value 35 */</span>

    最初に、Elements ElementaとElementBの両方が150pxの高さを持つように制約されています。 3行目では、2つの要素の合計(jì)は225pxです。したがって、2つの要素の制約の1つは保持されません。 GSS

    のセレクター GSSのセレクターは、HTML要素のグループに対するクエリであり、最終的に制約の影響を受ける要素を決定するために使用されます。セレクターは、制約を適用する前にDOMから要素を選択して観察する必要があるため、重要です。

    次の基本的なセレクターは、GSSによってサポートされています

    GSSのルールセット

    ルールセットでは、単一のセレクターを介して複數(shù)の制約を定義できます。それらをネストして、それらにCSSプロパティを使用することもできます。

    このネストされたルールセット:

    p[line-height] >= <span>10;
    </span>p[line-height] <= <span>::window[height] / 20;</span>

    は:

    と同じです

    GSS

    のプロパティ

    上記の例ではすでにプロパティをカバーしていますが、もう少し詳しく見(jiàn)てみましょう。 GSSでは、プロパティは要素に屬する変數(shù)です。 CSSで知られているプロパティを使用する場(chǎng)合、対応するGSS計(jì)算値は、要素のインラインスタイルとして割り當(dāng)てられます。

    このようなもの:
    #elementa[height] == <span>150;
    </span>#elementb[height] == <span>150;
    </span>#elementa[height] <span>+ #elementb[height] == 225;</span>

    は次のとおりです
    #elementID[height] == <span>150;   /* id      */
    </span>div[height] == <span>150;         /* element */
    </span>.className[height] == <span>150; /* class   */</span>

    キャッソワリー制約アルゴリズムの紹介

    GSSは、1999年にバドロス、ボーニング、スタッキーによるキャッサワリー線(xiàn)形算術(shù)制約解くアルゴリズムのJavaScriptポート(cassowary.js)を採(cǎi)用しています。

    ユーザーは、入力の制約が互いに矛盾しないことを確認(rèn)する必要はありません。実際、これはキャッソワリーアルゴリズムの本質(zhì)です。制約を段階的に評(píng)価し、最適なソリューションを自動(dòng)的に発見(jiàn)します。

    キャッソワリーアルゴリズムの計(jì)算制限
    <span>section < article {
    </span>  <span><span>.aclass</span> {
    </span>    <span>height: == 150;
    </span>  <span>}
    </span><span>}</span>

    GSSの背後にある制約ソルバーは、Cassowaryアルゴリズムと呼ばれます。このアルゴリズムは、線(xiàn)形の制約のみを計(jì)算できます(つまり、y = mx cの形式)。基本演算子(、 - 、 *、 /)はアルゴリズムによってサポートされています。 2つ(またはそれ以上)制約された変數(shù)の乗算と分割は線(xiàn)形ではないため、エラーが発生します。

    <span>(section < article .aclass)[height] == 150;</span>
    gss

    のインストール クライアント側(cè)のインストールの場(chǎng)合、Bower:

    を介してインストールします

    次に、このコードをマークアップのセクションに追加します:

    github経由でzipファイルとしてバージョン2.0.0をダウンロードすることもできます。

    gssをインストールしたら、タグにtype = text/gssを追加して.gss styleSheetsをロードしてください:

    .subscribe-button[right] == <span>::window[width];
    </span>.subscribe-button[center-y] == .header[center-y]<span>;</span>

    または

    #light[years] == <span>50 !weak;
    </span>#light[years] == <span>20 !medium;
    </span>#light[years] == <span>35 !strong;
    </span>
    <span>/* #light[years] will hold the value 35 */</span>

    すべてが稼働していると、いくつかのコードの例とともにフォローを開(kāi)始できます。以下に、初心者のチュートリアルについて説明します

    a GSS初心者のチュートリアル

    作成する例はCodepenを介して表示されますが、標(biāo)準(zhǔn)のHTMLドキュメントなどのチュートリアルを使用します。最初に、次のコード行をHTMLに追加して、GSSエンジンスクリプトを追加します。

    ファイルのCodepen-Hostedバージョンを使用しますが、ここでCDNホストバージョンを見(jiàn)つけることができます。次に、GSSリファレンススクリプト(上記に追加した行)の下に次のコードを追加して、GSSをドキュメントオブジェクトに渡します。
    p[line-height] >= <span>10;
    </span>p[line-height] <= <span>::window[height] / 20;</span>

    必要に応じて、これはエンジンスクリプトの後に含まれる別のJavaScriptファイルに配置できます。

    例1:要素を垂直に中心に
    #elementa[height] == <span>150;
    </span>#elementb[height] == <span>150;
    </span>#elementa[height] <span>+ #elementb[height] == 225;</span>

    divを作成し、GSSレイアウトのH2タグにいくつかのテキストを囲み、HTMLに追加します:

    基本的なスタイリングを追加した後、レイアウトを作成するためにいくつかのGSSを追加することができます。これが楽しみが始まるところです。

    私の目標(biāo)は、そのサイズにもかかわらず、ビューポート內(nèi)の.foo要素を垂直に中央に集中させ、要素のサイズが変更されても同じアライメントを所定の位置に保つことができることです。
    #elementID[height] == <span>150;   /* id      */
    </span>div[height] == <span>150;         /* element */
    </span>.className[height] == <span>150; /* class   */</span>
    この目標(biāo)を達(dá)成するために適用する制約は次のとおりです。

    ::ウィンドウセレクターを使用して、要素をブラウザ內(nèi)のページの可視部分と中央に集中させます。

    使用:: [Intrinsic-Height]屬性は、相対幅を決定するために使用される要素の高さの相対値を取得します。

    最初に、type屬性をテキスト/gssに設(shè)定して、

      追加するGSSを定義するには、
    • a
    • そしてそれが必要なすべてです。この要素は、GSSを垂直に使用して(動(dòng)的高さで)中心になっています。以下はデモです:
    CodepenのSitePoint(@SitePoint)のGSSを使用したペンの垂直センタリングを參照してください。

    フル畫(huà)面のデモを試して、ブラウザを垂直にサイズ変更して、任意のウィンドウサイズの中心にある要素を確認(rèn)してみてください。

    例2:動(dòng)的に変更されたウィンドウ幅に基づく要素の回転
    <span>section < article {
    </span>  <span><span>.aclass</span> {
    </span>    <span>height: == 150;
    </span>  <span>}
    </span><span>}</span>
    この次の例では、シンプルな色の正方形の形狀を作成し、動(dòng)的に回転させます。まず、ドキュメントのセクションに次のコード行を追加してGSSを起動(dòng)しましょう。
    .subscribe-button[right] == <span>::window[width];
    </span>.subscribe-button[center-y] == .header[center-y]<span>;</span>

    上記のコードを編集して、ファイルの正しい場(chǎng)所を指す必要があることに注意してください。 worker.jsファイルはこちらで、gss.jsファイルをこちらを入手できます。

    注:いくつかのバグのため、上記のファイルパスは、これを機(jī)能させるためにGSSの2.0.0以前のバージョンを指します。 ここで、これをHTMLに追加して正方形の形狀を作成しましょう:

    …そして、CSSにいくつかのスタイリングを追加します:
    #light[years] == <span>50 !weak;
    </span>#light[years] == <span>20 !medium;
    </span>#light[years] == <span>35 !strong;
    </span>
    <span>/* #light[years] will hold the value 35 */</span>

    ここで、HTMLに戻り、GSS制約をいくつか追加します。
    p[line-height] >= <span>10;
    </span>p[line-height] <= <span>::window[height] / 20;</span>
    GSSを使用すると、意図を作成し、數(shù)學(xué)的計(jì)算をアルゴリズムに任せたままにしておくことに留意してください。この例では、ウィンドウの幅が動(dòng)的に変化するときに要素と要素で回転が生成される要素とウィンドウの間に制約を作成しようとしています。

    この目標(biāo)を達(dá)成するために適用する制約は次のとおりです。

    :: window [center] selectorを使用して、要素を中心にブラウザ內(nèi)のページの可視部分を中心にします。

    >

    使用:: window [width]回転zで制約を作成し、z軸の周りの要素に回転効果を作成します。ここで、:: window [width]から受け取った値は、回転の程度を表します。

      最初の例のように、テキスト/gssにセットされたタイプセットを使用して、HTMLにスタイルブロックを追加します。追加するGSSを定義するためにスタイルブロックが必要であることを忘れないでください。
    • スタイルタグ內(nèi)に次のコードを追加することにより、GSS制約を使用してスクエアボックスを畫(huà)面に関連付けます。
    • そしてそれで、それは完了です。最終的なCodepenデモをご覧ください:

    codepenでSitePoint(@sitepoint)によるGSSを使用したペン動(dòng)的回転を參照してください。

    フル畫(huà)面のデモを表示する場(chǎng)合は、ウィンドウを変更してみてください。ウィンドウの幅が変更されたときに、四角いボックスが回転位置を変更することに気付くでしょう。
    #elementa[height] == <span>150;
    </span>#elementb[height] == <span>150;
    </span>#elementa[height] <span>+ #elementb[height] == 225;</span>
    GSSの未來(lái)

    GSSの未來(lái)は有望に見(jiàn)えます。フロントエンドテクノロジーで前進(jìn)する時(shí)が來(lái)ました。 StyleSheetライブラリ全體を引き裂く前に、小規(guī)模なプロトタイプで練習(xí)することをお?jiǎng)幛幛筏蓼埂?
    #elementID[height] == <span>150;   /* id      */
    </span>div[height] == <span>150;         /* element */
    </span>.className[height] == <span>150; /* class   */</span>
    ここで取り上げたのは、GSSでできることのほんの一部ですが、このチュートリアルがあなたを始めるために役立つ有益であることを願(yuàn)っています。

    まだGSSを使用しましたか?あなたの経験はどうでしたか?コメントセクションでお知らせください。

    GSS(グリッドスタイルシート)

    に関するよくある質(zhì)問(wèn)

    GSS(グリッドスタイルのシート)とは?

    GSS、またはグリッドスタイルシートは、Web開(kāi)発者とデザイナーにとって強(qiáng)力なツールです。これは、シンプルで直感的な構(gòu)文を使用してレスポンシブで柔軟なレイアウトを作成できる制約ベースのレイアウトエンジンです。 GSSは、制約の概念を?qū)毪工毪长趣摔瑜陱緛?lái)のCSSモデルを拡張します。これにより、要素間の関係をより正確かつ柔軟な方法で制御できるようになります。

    従來(lái)のCSSは、レイアウトにボックスモデルを使用します。これは、複雑なレイアウトを作成するときに制限されて複雑になる可能性があります。一方、GSSは制約ベースのモデルを使用します。これにより、柔軟性と精度が向上します。 GSSを使用すると、要素間の関係を定義し、より直感的な方法で動(dòng)作を制御できます。あなたのプロジェクトで。これは、公式WebサイトからGSSライブラリをダウンロードするか、NPMのようなパッケージマネージャーを使用することで実行できます。 GSSエンジンがプロジェクトに含まれると、CSSファイルにGSSコードの書(shū)き込みを開(kāi)始できます。

    既存のCSSコードでGSSを使用できますか?従來(lái)のCSSと並んで。これは、既存のCSSコードを書(shū)き換えることなく、プロジェクトにGSSを徐々に導(dǎo)入できることを意味します。 GSSコードは、個(gè)別のファイルで記述したり、通常のCSSコードと混合したりすることができます。

    GSSを使用することの利點(diǎn)は何ですか?レイアウトをより正確に制御できるようになり、複雑で応答性の高いデザインを簡(jiǎn)単に作成できます。また、GSSはコードを簡(jiǎn)素化するため、読みやすくなりやすくなります。さらに、GSSはライブ編集をサポートしています。つまり、コーディングとしてリアルタイムで変更を確認(rèn)できます。

    GSSはすべてのブラウザーによってサポートされていますか?エンジンは、JavaScriptをサポートする最新のブラウザで機(jī)能する必要があります。ただし、新しいテクノロジーと同様に、複數(shù)のブラウザでデザインをテストして互換性を確保することをお?jiǎng)幛幛筏蓼埂?GSSを?qū)W習(xí)するために利用可能なリソース。公式のGSS Webサイトは、包括的なガイドとドキュメントを提供しています。 GSSを詳細(xì)にカバーするいくつかのオンラインチュートリアルとコースもあります。その制約ベースのレイアウトエンジンは、さまざまな畫(huà)面サイズと向きに適応するレスポンシブデザインを可能にします。これにより、さまざまなデバイスで一貫したユーザーエクスペリエンスを簡(jiǎn)単に作成できます。

    GSSはオープンソースですか?

    はい、GSSはオープンソースプロジェクトです。これは、誰(shuí)でも開(kāi)発に貢獻(xiàn)し、プロジェクトで無(wú)料で使用できることを意味します。 GSSのソースコードはGithubで入手できます。

    GSSの將來(lái)は何ですか?

    比較的新しいテクノロジーとして、GSSはまだ進(jìn)化しています。ただし、その強(qiáng)力な機(jī)能と制約ベースのレイアウトへの関心の高まりは、有望な未來(lái)があることを示唆しています。より多くの開(kāi)発者がGSSを採(cǎi)用するにつれて、この革新的なテクノロジーに対するリソース、ツール、コミュニティのサポートが増えることが期待できます。

      グリッドスタイルシート(GSS)は、ブラウザのレイアウトエンジンをキャッソワリー制約ソルバーに置き換えるCSSプリプロセッサとJavaScriptランタイムであり、相対的なポジショニングとサイジングを約束し、1つのコードを別のラインで中央に配置する能力を約束します。 >
    • GSSは、実裝ではなく意図に焦點(diǎn)を當(dāng)てた制約プログラミングを採(cǎi)用しているため、開(kāi)発者は「何」を宣言し、「方法」を數(shù)學(xué)的なソルバーに任せることができます。
    • GSSは、フロート、テーブルセル、クリアフィックス、および水平/垂直センタリングを廃止し、制約階層を使用して強(qiáng)度を持つ制約を優(yōu)先し、4つの組み込み強(qiáng)度レベルを提供します。
    • GSSは、キャッソワリー線(xiàn)形算術(shù)制約解くアルゴリズムを使用して、ユーザーによって自然言語(yǔ)で與えられた入力制約に基づいてレイアウトに最適なソリューションを見(jiàn)つけ、制約を徐々に評(píng)価し、最適なソリューションを自動(dòng)的に発見(jiàn)します。
    • GSSの使用を開(kāi)始するには、Bowerを介してインストールするか、githubを介してzipファイルとしてダウンロードする必要があります。その後、GSSスタイルシートは、a
    • タグにtype = text/gssを追加するか、a
    • >を使用してロードできます。
    • 簡(jiǎn)単な歴史
    • GSSは、Dan Tocchiniが創(chuàng)設(shè)者兼CEOとしてのグリッドの作成です。これは、なぜそれほどグリッドではないスタイルシートがグリッドスタイルのシートと呼ばれるのかと答えています。
    ウェブ開(kāi)発者とフロントエンドテクノロジーとの間の戦爭(zhēng)は、ウェブにアイデアを提示することが何年も続いています。 CSSは、過(guò)去10年間に勝利していることが証明されています。ただし、時(shí)間とともに進(jìn)化していないツールを使用してますます複雑なユーザーインターフェイスを構(gòu)築することは、Web開(kāi)発者が定期的に行うことが期待されることです。たとえば、要素をCSSで垂直に中心にすることは、特に可変高さの要素を使用して、最も単純なタスクではありませんでした。

    FlexBoxは最新のソリューションの1つですが、そこで小さな変更でさえ、HTMLコンテンツとCSSプレゼンテーションの奧深くに進(jìn)み、変更を加える必要があります。

    GSSがアリーナを取る時(shí)が來(lái)ました。 GSSはこれらの問(wèn)題やその他多くの問(wèn)題に取り組んでいます - 開(kāi)発者が10年以上抱えてきた問(wèn)題。

    本質(zhì)的に、GSSはCSSプリプロセッサであり、cassowary.jsを悪用するJavaScriptランタイムです。まだ知らない人、cassowary.jsは、cocoa autolayoutで使用しているJavaScript Port Appleです。

    GSSとCassowaryの両方が制約プログラミングに基づいているため、CSSのような宣言言語(yǔ)に力を與えるのに理想的です。制約プログラミングは、Web開(kāi)発者が「What」を宣言し、「方法」を數(shù)學(xué)的ソルバーに任せることに関心があるパラダイムです。

    制約プログラミングは、実裝ではなく意図に焦點(diǎn)を當(dāng)てています

    背景情報(bào)をいくつか確立したので、GSSオファーの機(jī)能に進(jìn)みましょう。 GSSの概要

    CSSの最大の問(wèn)題の1つは相対性です。 CSS要素には、パディング、高さ、幅、フロート、マージン、境界線(xiàn)、アウトラインなどのプロパティの終わりのないリストがあると期待できますが、この情報(bào)は、ページ上の他の要素に関連して要素がどこにあるかを教えてくれません(またはページ全體)。また、エンドレスリストは、異なる畫(huà)面サイズで要素が表示される場(chǎng)所にも答えません。

    これは、GSSの最初の機(jī)能に私たちをもたらします。レイアウトが何であるかを定義します。無(wú)數(shù)の時(shí)間を費(fèi)やし、レイアウトの構(gòu)築方法を戦略化する時(shí)代は終わりました。

    GSSがcassowary.jsを利用していることをすでに説明しているため、GSSのもう1つの優(yōu)れた機(jī)能を次に示します。要素は、1つのコードを持つ他の任意の任意の中心にできます。これにより、多くの回避策が不要になり、過(guò)去のものがあります。 たとえば、

    たとえば、サイトのページの右側(cè)にある見(jiàn)出しと垂直にサブスクライブボタンを追加する場(chǎng)合は、次のコードを使用します。

    別の機(jī)能:GSSは、フロート、テーブルセル、クリアフィックス、および水平/垂直センタリングを廃止します。フロート自體がアプリケーションレイアウトに理想的ではないと言っているため、フロートである危険な落とし穴に別れを告げます。

    「ウェブサイトが簡(jiǎn)単なドキュメントから複雑でインタラクティブなアプリケーション、ドキュメントレイアウト用のツールに進(jìn)化したため。フロートは、アプリケーションレイアウトに必ずしも適していませんでした。」

    - W3Cグリッドレイアウトモジュール(作業(yè)ドラフト)

    .subscribe-button[right] == <span>::window[width];
    </span>.subscribe-button[center-y] == .header[center-y]<span>;</span>

    重要なCSS機(jī)能はどうですか?重要ですか? GSSの4番目の機(jī)能は同様のことを行います。GSSは制約階層を使用して、制約を強(qiáng)度で優(yōu)先順位付けします。ここでは、4つの組み込み強(qiáng)度レベルについて話(huà)しています:

    !弱い

    !medium

    !strong

    • を要求します
    • requireは、制約が保持されることを保証する
    • 特別
    • 強(qiáng)度であり、それがそうでない場(chǎng)合、すべてが壊れることに注意してください。慎重かつ頻繁に使用することをお?jiǎng)幛幛筏蓼?p>強(qiáng)度のレベルがリストの下に上昇し、実行中により強(qiáng)い制約がより高い優(yōu)先度を與えられます。例を見(jiàn)てみましょう:

      .subscribe-button[right] == <span>::window[width];
      </span>.subscribe-button[center-y] == .header[center-y]<span>;</span>

      ここまで行ったことがあります。制約ベースのレイアウトを今すぐ見(jiàn)てみましょう。

      制約ベースのレイアウトのGSS

      制約は、基本的に、保持される可能性のある2つ以上の変數(shù)間の関係です。要素のすべての數(shù)値特性は、制約される資格があります。例を次に示します:

      #light[years] == <span>50 !weak;
      </span>#light[years] == <span>20 !medium;
      </span>#light[years] == <span>35 !strong;
      </span>
      <span>/* #light[years] will hold the value 35 */</span>
        pはセレクター
      • と呼ばれます
      • line-heightは、GSSが
      • の値を計(jì)算するプロパティです。
      • []は、プロパティへのアクセスに使用されます
      • =不平等制約を定義します
      • 10および20は、ピクセル
      • の數(shù)値値です
      上記の例では、両方の制約が有効になります。以下は、保持されない制約の例です。

      p[line-height] >= <span>10;
      </span>p[line-height] <= <span>::window[height] / 20;</span>
      最初に、Elements ElementaとElementBの両方が150pxの高さを持つように制約されています。 3行目では、2つの要素の合計(jì)は225pxです。したがって、2つの要素の制約の1つは保持されません。 GSS

      のセレクター GSSのセレクターは、HTML要素のグループに対するクエリであり、最終的に制約の影響を受ける要素を決定するために使用されます。セレクターは、制約を適用する前にDOMから要素を選択して観察する必要があるため、重要です。

      次の基本的なセレクターは、GSSによってサポートされています

      GSSのルールセット

      ルールセットでは、単一のセレクターを介して複數(shù)の制約を定義できます。それらをネストして、それらにCSSプロパティを使用することもできます。

      このネストされたルールセット:

      #elementa[height] == <span>150;
      </span>#elementb[height] == <span>150;
      </span>#elementa[height] <span>+ #elementb[height] == 225;</span>
      は:

      と同じです

      GSS

      のプロパティ

      上記の例ではすでにプロパティをカバーしていますが、もう少し詳しく見(jiàn)てみましょう。 GSSでは、プロパティは要素に屬する変數(shù)です。 CSSで知られているプロパティを使用する場(chǎng)合、対応するGSS計(jì)算値は、要素のインラインスタイルとして割り當(dāng)てられます。

      このようなもの:

      #elementID[height] == <span>150;   /* id      */
      </span>div[height] == <span>150;         /* element */
      </span>.className[height] == <span>150; /* class   */</span>

      は次のとおりです

      <span>section < article {
      </span>  <span><span>.aclass</span> {
      </span>    <span>height: == 150;
      </span>  <span>}
      </span><span>}</span>
      キャッソワリー制約アルゴリズムの紹介

      GSSは、1999年にバドロス、ボーニング、スタッキーによるキャッサワリー線(xiàn)形算術(shù)制約解くアルゴリズムのJavaScriptポート(cassowary.js)を採(cǎi)用しています。

      ユーザーは、入力の制約が互いに矛盾しないことを確認(rèn)する必要はありません。実際、これはキャッソワリーアルゴリズムの本質(zhì)です。制約を段階的に評(píng)価し、最適なソリューションを自動(dòng)的に発見(jiàn)します。

      キャッソワリーアルゴリズムの計(jì)算制限

      GSSの背後にある制約ソルバーは、Cassowaryアルゴリズムと呼ばれます。このアルゴリズムは、線(xiàn)形の制約のみを計(jì)算できます(つまり、y = mx cの形式)?;狙菟阕樱?、 - 、 *、 /)はアルゴリズムによってサポートされています。 2つ(またはそれ以上)制約された変數(shù)の乗算と分割は線(xiàn)形ではないため、エラーが発生します。

      .subscribe-button[right] == <span>::window[width];
      </span>.subscribe-button[center-y] == .header[center-y]<span>;</span>
      gss

      のインストール クライアント側(cè)のインストールの場(chǎng)合、Bower:

      を介してインストールします

      次に、このコードをマークアップのセクションに追加します:
      #light[years] == <span>50 !weak;
      </span>#light[years] == <span>20 !medium;
      </span>#light[years] == <span>35 !strong;
      </span>
      <span>/* #light[years] will hold the value 35 */</span>

      github経由でzipファイルとしてバージョン2.0.0をダウンロードすることもできます。
      p[line-height] >= <span>10;
      </span>p[line-height] <= <span>::window[height] / 20;</span>
      gssをインストールしたら、タグにtype = text/gssを追加して.gss styleSheetsをロードしてください:

      または

      #elementa[height] == <span>150;
      </span>#elementb[height] == <span>150;
      </span>#elementa[height] <span>+ #elementb[height] == 225;</span>

      すべてが稼働していると、いくつかのコードの例とともにフォローを開(kāi)始できます。以下に、初心者のチュートリアルについて説明します

      a GSS初心者のチュートリアル
      #elementID[height] == <span>150;   /* id      */
      </span>div[height] == <span>150;         /* element */
      </span>.className[height] == <span>150; /* class   */</span>

      作成する例はCodepenを介して表示されますが、標(biāo)準(zhǔn)のHTMLドキュメントなどのチュートリアルを使用します。最初に、次のコード行をHTMLに追加して、GSSエンジンスクリプトを追加します。

      ファイルのCodepen-Hostedバージョンを使用しますが、ここでCDNホストバージョンを見(jiàn)つけることができます。次に、GSSリファレンススクリプト(上記に追加した行)の下に次のコードを追加して、GSSをドキュメントオブジェクトに渡します。

      必要に応じて、これはエンジンスクリプトの後に含まれる別のJavaScriptファイルに配置できます。

      例1:要素を垂直に中心に
      <span>section < article {
      </span>  <span><span>.aclass</span> {
      </span>    <span>height: == 150;
      </span>  <span>}
      </span><span>}</span>

      divを作成し、GSSレイアウトのH2タグにいくつかのテキストを囲み、HTMLに追加します:

      <span>(section < article .aclass)[height] == 150;</span>

      基本的なスタイリングを追加した後、レイアウトを作成するためにいくつかのGSSを追加することができます。これが楽しみが始まるところです。

      私の目標(biāo)は、そのサイズにもかかわらず、ビューポート內(nèi)の.foo要素を垂直に中央に集中させ、要素のサイズが変更されても同じアライメントを所定の位置に保つことができることです。

      この目標(biāo)を達(dá)成するために適用する制約は次のとおりです。

      ::ウィンドウセレクターを使用して、要素をブラウザ內(nèi)のページの可視部分と中央に集中させます。
      <span><span>.container</span> {
      </span>  <span>height: == #elm[height];
      </span><span>}</span>
      使用:: [Intrinsic-Height]屬性は、相対幅を決定するために使用される要素の高さの相対値を取得します。

      最初に、type屬性をテキスト/gssに設(shè)定して、
    • codepenでSitePoint(@sitepoint)によるGSSを使用したペン動(dòng)的回転を參照してください。
    • フル畫(huà)面のデモを表示する場(chǎng)合は、ウィンドウを変更してみてください。ウィンドウの幅が変更されたときに、四角いボックスが回転位置を変更することに気付くでしょう。
    • GSSの未來(lái)

    GSSの未來(lái)は有望に見(jiàn)えます。フロントエンドテクノロジーで前進(jìn)する時(shí)が來(lái)ました。 StyleSheetライブラリ全體を引き裂く前に、小規(guī)模なプロトタイプで練習(xí)することをお?jiǎng)幛幛筏蓼埂?/p>

    ここで取り上げたのは、GSSでできることのほんの一部ですが、このチュートリアルがあなたを始めるために役立つ有益であることを願(yuàn)っています。

    まだGSSを使用しましたか?あなたの経験はどうでしたか?コメントセクションでお知らせください。

    GSS(グリッドスタイルシート)

    に関するよくある質(zhì)問(wèn) GSS(グリッドスタイルシート)とは何ですか?

    GSS、またはグリッドスタイルのシートは、Web開(kāi)発者とデザイナーにとって強(qiáng)力なツールです。これは、シンプルで直感的な構(gòu)文を使用してレスポンシブで柔軟なレイアウトを作成できる制約ベースのレイアウトエンジンです。 GSSは、制約の概念を?qū)毪工毪长趣摔瑜陱緛?lái)のCSSモデルを拡張します。これにより、要素間の関係をより正確で柔軟な方法で制御できるようになります。

    従來(lái)のCSSは、レイアウトにボックスモデルを使用します。これは、複雑なレイアウトを作成するときに制限されて複雑になる可能性があります。一方、GSSは制約ベースのモデルを使用します。これにより、柔軟性と精度が向上します。 GSSを使用すると、要素間の関係を定義し、より直感的な方法で動(dòng)作を制御できます。 GSSの使用を開(kāi)始するにはどうすればよいですか?

    GSSの使用を開(kāi)始するには、プロジェクトにGSSエンジンを含める必要があります。これは、公式WebサイトからGSSライブラリをダウンロードするか、NPMのようなパッケージマネージャーを使用することで実行できます。 GSSエンジンがプロジェクトに含まれたら、CSSファイルにGSSコードの書(shū)き込みを開(kāi)始できます。

    既存のCSSコードでGSSを使用できますか?

    はい、GSSは従來(lái)のCSSと一緒に作業(yè)するように設(shè)計(jì)されています。これは、既存のCSSコードを書(shū)き換えることなく、プロジェクトにGSSを徐々に導(dǎo)入できることを意味します。 GSSコードは、個(gè)別のファイルで記述するか、通常のCSSコードと混合できます。

    GSSは、従來(lái)のCSSよりもいくつかの利點(diǎn)を提供します。レイアウトをより正確に制御できるようになり、複雑で応答性の高いデザインを簡(jiǎn)単に作成できます。また、GSSはコードを簡(jiǎn)素化するため、読みやすくなりやすくなります。さらに、GSSはライブ編集をサポートしています。つまり、コードするときにリアルタイムで変更を確認(rèn)できます。 GSSはJavaScriptを使用して制約ベースのレイアウトエンジンを?qū)g裝しています。つまり、JavaScriptをサポートする最新のブラウザで動(dòng)作するはずです。ただし、新しいテクノロジーと同様に、複數(shù)のブラウザでデザインをテストして互換性を確保することをお?jiǎng)幛幛筏蓼埂?

    はい、GSSを?qū)W習(xí)するために利用可能ないくつかのリソースがあります。公式のGSS Webサイトは、包括的なガイドとドキュメントを提供しています。 GSSを詳細(xì)にカバーするいくつかのオンラインチュートリアルとコースもあります。

    はい、GSSはモバイルWeb開(kāi)発のための優(yōu)れたツールです。その制約ベースのレイアウトエンジンは、さまざまな畫(huà)面サイズと向きに適応するレスポンシブデザインを可能にします。これにより、さまざまなデバイスで一貫したユーザーエクスペリエンスを作成しやすくなります。 はい、GSSはオープンソースプロジェクトです。これは、誰(shuí)でも開(kāi)発に貢獻(xiàn)し、プロジェクトで無(wú)料で使用できることを意味します。 GSSのソースコードはGitHubで入手できます。

    比較的新しいテクノロジーとして、GSSはまだ進(jìn)化しています。ただし、その強(qiáng)力な機(jī)能と制約ベースのレイアウトへの関心の高まりは、有望な未來(lái)があることを示唆しています。より多くの開(kāi)発者がGSSを採(cǎi)用するにつれて、この革新的なテクノロジーに対するリソース、ツール、コミュニティのサポートが増えることが期待できます。

    以上がGSSの紹介:グリッドスタイルシートの詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國(guó)語(yǔ) Web サイトの他の関連記事を參照してください。

    このウェブサイトの聲明
    この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見(jiàn)つけた場(chǎng)合は、admin@php.cn までご連絡(luò)ください。

    ホットAIツール

    Undress AI Tool

    Undress AI Tool

    脫衣畫(huà)像を無(wú)料で

    Undresser.AI Undress

    Undresser.AI Undress

    リアルなヌード寫(xiě)真を作成する AI 搭載アプリ

    AI Clothes Remover

    AI Clothes Remover

    寫(xiě)真から衣服を削除するオンライン AI ツール。

    Clothoff.io

    Clothoff.io

    AI衣類(lèi)リムーバー

    Video Face Swap

    Video Face Swap

    完全無(wú)料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡(jiǎn)単に交換できます。

    ホットツール

    メモ帳++7.3.1

    メモ帳++7.3.1

    使いやすく無(wú)料のコードエディター

    SublimeText3 中國(guó)語(yǔ)版

    SublimeText3 中國(guó)語(yǔ)版

    中國(guó)語(yǔ)版、とても使いやすい

    ゼンドスタジオ 13.0.1

    ゼンドスタジオ 13.0.1

    強(qiáng)力な PHP 統(tǒng)合開(kāi)発環(huán)境

    ドリームウィーバー CS6

    ドリームウィーバー CS6

    ビジュアル Web 開(kāi)発ツール

    SublimeText3 Mac版

    SublimeText3 Mac版

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

    「レンダリングブロッキングCSS」とは何ですか? 「レンダリングブロッキングCSS」とは何ですか? Jun 24, 2025 am 12:42 AM

    ブラウザは、特にインポートされたスタイルシート、ヘッダーのインラインCSS、および最適化されていないメディアクエリスタイルを使用して、ブラウザがインラインおよび外部CSSをデフォルトで主要なリソースとして表示するため、ページレンダリングをブロックします。 1.重要なCSSを抽出し、HTMLに埋め込みます。 2。JavaScriptを介して非クリティカルなCSSの読み込みを遅らせる。 3.メディア屬性を使用して、印刷スタイルなどのロードを最適化します。 4.リクエストを減らすためにCSSを圧縮およびマージします。ツールを使用してキーCSSを抽出し、REL = "Preload"非同期負(fù)荷を組み合わせ、過(guò)度の分割と複雑なスクリプト制御を避けるためにメディア遅延荷重を合理的に使用することをお?jiǎng)幛幛筏蓼埂?/p>

    外部対內(nèi)部CSS:最良のアプローチは何ですか? 外部対內(nèi)部CSS:最良のアプローチは何ですか? Jun 20, 2025 am 12:45 AM

    TheBestAppRoachforCSDependsonTheProject'sSpecificNeeds.forLargerProjects、externalCssissisbetterduetoMaintainasiladability; forsmallerProjectsOrsingLe-PageApplications、internalcsSmightBemoresuitable.it

    Autoprefixerとは何ですか?それはどのように機(jī)能しますか? Autoprefixerとは何ですか?それはどのように機(jī)能しますか? Jul 02, 2025 am 01:15 AM

    Autoprefixerは、ターゲットブラウザスコープに基づいてCSS屬性にベンダープレフィックスを自動(dòng)的に追加するツールです。 1.エラーで接頭辭を手動(dòng)で維持する問(wèn)題を解決します。 2. PostCSSプラグインフォーム、CSSを解析し、プレフィックスする必要がある屬性を分析し、構(gòu)成に従ってコードを生成する屬性を分析します。 3.使用手順には、プラグインのインストール、ブラウザーリストの設(shè)定、ビルドプロセスでそれらを有効にすることが含まれます。 4。メモには、接頭辭を手動(dòng)で追加しない、構(gòu)成の更新を保持すること、すべての屬性ではなくプレフィックスを維持することが含まれ、プリ??プロセッサでそれらを使用することをお?jiǎng)幛幛筏蓼埂?/p>

    CSSケース感度:重要なことを理解する CSSケース感度:重要なことを理解する Jun 20, 2025 am 12:09 AM

    cssismostlycase-inssensitive、buturlsandfontfamilynamesarecase-sensitive.1)propertiesandvalueslikecolor:red; areotcase-sensitive.2)urlsmustmatchtheserver'scase、例えば、/畫(huà)像/logo.png.3)

    conic-gradient()関數(shù)とは何ですか? conic-gradient()関數(shù)とは何ですか? Jul 01, 2025 am 01:16 AM

    TheConic-Gradient()functionsscreateScular勾配の勾配は、測(cè)定されていることを確認(rèn)してください

    粘著性ヘッダーまたはフッターを作成するためのCSSチュートリアル 粘著性ヘッダーまたはフッターを作成するためのCSSチュートリアル Jul 02, 2025 am 01:04 AM

    to CreateStickyheadersandfooterswithcss、使用ポジション:Stickyforheaderswithtopvalueandz-index、ParentContainersdon’trestrictit.1.forstickyheaders:Setposition:Sticky、Top:0、Z-Index、およびBackgroundColor.2

    CSSカスタムプロパティの範(fàn)囲は何ですか? CSSカスタムプロパティの範(fàn)囲は何ですか? Jun 25, 2025 am 12:16 AM

    CSSカスタムプロパティの範(fàn)囲は宣言のコンテキストに依存します。通常、グローバル変數(shù)は次のように定義されます。一方、ローカル変數(shù)は、スタイルのコンポーネント化と分離のために特定のセレクター內(nèi)で定義されます。たとえば、.cardクラスで定義されている変數(shù)は、クラスとその子供に一致する要素でのみ使用できます。ベストプラクティスには以下が含まれます。1。使用:ルートトピック色などのグローバル変數(shù)を定義する。 2。コンポーネント內(nèi)のローカル変數(shù)を定義して、カプセル化を?qū)g裝します。 3.同じ変數(shù)を繰り返し宣言しないでください。 4.セレクターの特異性によって引き起こされる可能性のあるカバレッジの問(wèn)題に注意してください。さらに、CSS変數(shù)はケースに敏感であり、エラーを回避するために使用する前に定義する必要があります。変數(shù)が未定義の場(chǎng)合、または參照が失敗した場(chǎng)合、フォールバック値またはデフォルト値の初期が使用されます。デバッグは、ブラウザ開(kāi)発者を介して実行できます

    CSSアニメーションの可能性のロックを解除:ディープダイビング CSSアニメーションの可能性のロックを解除:ディープダイビング Jun 20, 2025 am 12:14 AM

    cssanimationsenhancewebpagesbyurebrovinguserexperienceantity.1)usetransitionsforsmoothstylechanges、asinthebuttoncolorexample.2)雇用キーフレーズフォードテイル型の裝具、noceethebouncinging.3)

    See all articles