CSS の継承と自動

Feb 10, 2017 pm 04:21 PM

とても単純な寓話ですが、樹齢千年の木が雷に打たれてまだ立っていたのに、アリの侵入によって破壊されてしまいました。自分は CSS に熟達していると思っている人でも、小さな問題によって混乱してしまうことがよくあります。通常、これは非常に小さな値ですが、増幅と歪みを重ねた後は、構造全体の形状が崩れてしまいます。 CSS は非常にシンプルな言語で、習得も使用も簡単ですが、最もガベージ コードが発生しやすい言語でもあります。これは言語を深く勉強していないことが原因です。 CSS はデフォルト値、継承方式、重み付け方式の 3 つのブロックで構成されていると私は考えています。ユーザーが属性を設定しない場合、デフォルト値はブラウザによってデフォルトで指定された属性です。 CSS フレームワークには基本的に、reset.css というファイルがあり、これをリセットしてブラウザ間の差異をなくすために使用されます。以下では継承システムに焦点を当てます。重み付けシステム、つまり優先順位の問題については、この記事の範囲を超えているため、これ以上は説明しません。

CSS では、多くのプロパティを継承できます。たとえば、特定の段落のフォントが白に設定されている場合、その要素のフォントは設定する必要がないか、継承するように設定されている場合は白になります。これらの属性は継承プロパティと呼ばれ、親要素が同じ状況にある場合は、対応する属性の計算および変換された値を取得し、一致する場合は最終的に参照を使用します。デバイスのデフォルト値が見つかりません。

継承されたプロパティのリストは次のとおりです:

  • border-collapse

  • border-spacing

  • caption-side

  • color

  • cursor

  • 方向

  • 空のセル

  • font

  • font-family

  • font-stretch

  • font-size

  • font-size-adjust

  • font-style

  • フォント- バリアント

  • フォントの太さ

  • 文字間隔

  • 行の高さ

  • リストスタイル

  • 不透明度

  • リストスタイル-画像

  • リスト- style -type

  • quotes

  • text-align

  • text-indent

  • text-transform

  • white-space

  • word-spacing

http:/ / www.php.cn/

親要素にはフォントスタイルを設定しましたが、子要素を設定していませんでした。子要素を取り出すと、その値がrgb形式に変換されていることがわかりました。もちろん IE です!)

しかし、IE7 以前のバージョンでは、方向と可視性以外のスタイル属性を設定するために継承を使用することはサポートされていません。詳しくはこちらとこちらをご覧ください

IE8では、本来継承プロパティであるtext-alignが失敗してしまいます。

 <table>
  <tr>
    <th>Ruby</th>
    <th>Rouvre</th>
  </tr>
  <tr>
    <td>By</td>
    <td>司徒正美</td>
  </tr>
</table>
ログイン後にコピー
 
  table, tr, td, th {
    border-collapse: collapse;
    border: 1px solid #000;
  }
  table {
    text-align: right;
  } 
  td, th {
    width: 100px;
  }
ログイン後にコピー

本来、テーブルからテキストの右揃えの設定を継承するはずでしたが、失敗しました...

IE8 のこの精神薄弱なバグは、明示的に設定することで解決することも簡単です継承する。

 
  table, tr, td, th {
    border-collapse: collapse;
    border: 1px solid #000;
  }
  table {
    text-align: right;
  }
  td, th {
    width: 100px;
  }
  th {
    text-align: inherit;
  }
ログイン後にコピー

さらに、継承できない CSS プロパティがいくつかあり、最も古典的なものはボーダーシリーズです。これは非継承プロパティと呼ばれ、設定しない場合はブラウザのデフォルト値のみを取得できます。デフォルト値は Firefox では初期値と呼ばれます。これに関連した良いニュースは、Firefox ではデフォルト値も指定できるため、スタイルをリセットする必要がないことです。

以下は、継承されていないプロパティのリストです:

  • background

  • border

  • bottom

  • clear

  • display

  • フロート

  • 高さ

  • マージン

  • アウトライン

  • オーバーフロー

  • パディング

  • 位置

  • トップ

  • 可視性

  • z-index

子要素を設定しない場合は、ブラウザのデフォルト値の透明が取得されます(W3Cはすべての色をRGB形式に変換するようですが、これは余分です (a はアルファです)

次に、あいまいな値ですが長さの概念がある auto を見てみましょう。次のプロパティに適用されます。

  • マージン-* (左|下|上 |右|開始|終了)

  • table-layout

  • z-index

  • -moz-column - 幅

  • 言語

  • ブロックレベル要素の測定可能な属性 (幅、高さなど) では、値が設定されていない場合、デフォルト値は auto ですが、値によって簡単にオーバーライドできます。つまり、暗黙的に継承されます。インライン要素ではボックス モデルがないため、設定されていない場合は Firefox でもボックス モデルを返します。これは要素の幅と高さを正確に計算するのに非常に悪影響を及ぼします。自動には対称性もあります。これは中央配置のレイアウトでよく使用されます。オーバーフローなどの非メトリック属性の中には、特定の分析が必要です。

    CSS 継承と自動に関連するその他の記事については、PHP 中国語 Web サイトに注目してください。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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ヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

GraphQLキャッシングの使用 GraphQLキャッシングの使用 Mar 19, 2025 am 09:36 AM

最近GraphQLの作業を開始した場合、またはその長所と短所をレビューした場合、「GraphQLがキャッシュをサポートしていない」または

最初のカスタムSvelteトランジションを作成します 最初のカスタムSvelteトランジションを作成します Mar 15, 2025 am 11:08 AM

Svelte Transition APIは、コンポーネントがカスタムSVELTE遷移を含むドキュメントを入力または離れるときにアニメーション化する方法を提供します。

ショー、Don&#039; t Tell ショー、Don&#039; t Tell Mar 16, 2025 am 11:49 AM

あなたのウェブサイトのコンテンツプレゼンテーションの設計にどれくらいの時間に費やしますか?新しいブログ投稿を書いたり、新しいページを作成したりするとき、あなたは考えていますか

Redwood.jsと動物相を使用してイーサリアムアプリを構築します Redwood.jsと動物相を使用してイーサリアムアプリを構築します Mar 28, 2025 am 09:18 AM

最近のビットコインの価格が20k $ $ USDを超えており、最近30Kを破ったので、イーサリアムを作成するために深く掘り下げる価値があると思いました

CSSを使用して、テキストシャドウやグラデーションなどのテキスト効果を作成しますか? CSSを使用して、テキストシャドウやグラデーションなどのテキスト効果を作成しますか? Mar 14, 2025 am 11:10 AM

この記事では、影やグラデーションなどのテキスト効果にCSSを使用し、パフォーマンスのために最適化し、ユーザーエクスペリエンスの向上について説明します。また、初心者向けのリソースもリストしています。(159文字)

Eleventyで独自のBragdocを作成します Eleventyで独自のBragdocを作成します Mar 18, 2025 am 11:23 AM

開発者としての段階に関係なく、私たちが完了したタスクは、大小を問わず、個人的および専門的な成長に大きな影響を与えます。

NPMコマンドは何ですか? NPMコマンドは何ですか? Mar 15, 2025 am 11:36 AM

NPMコマンドは、サーバーの開始やコンパイルコードなどの1回限りのプロセスまたは継続的に実行されるプロセスとして、さまざまなタスクを実行します。

CI/CDで少し CI/CDで少し Apr 02, 2025 pm 06:21 PM

「ウェブサイト」は「モバイルアプリ」よりも適していると言いますが、Max Lynchからのこのフレーミングが好きです。

See all articles