火曜日, 2月 3, 2026
火曜日, 2月 3, 2026
- Advertisment -
ホームニューステックニュース愛情を込めて難解な CSS – CodePen

愛情を込めて難解な CSS – CodePen


セレクターが行うことの違いを説明できますか :has(:not):not(:has)? Kilian Valkhof が、先ほどリンクした投稿を書きました。私は、彼が考え抜く方法として、すべてを書き出すことを教えているのが好きです。 暗黙の 仕事中のセレクター。例えば:

.card:has(:not(img)) {}
.card:not(:has(img)) {}Code language: CSS (css)

本当に:

.card:has(*:not(img)) {}
.card:not(.card:has(img)) {}Code language: CSS (css)

後者は私にとってより明確になります。

  1. 内のすべてのものを選択します .card それはそうではありません img
  2. が含まれていないカードを選択してください。 img

超違う。こういうのが大好きなんです。 CSS オタク向けの Sudoku パズルのようなものです。


といえば :has()Heydon は「サイドバー」レイアウトで少し哲学的になります、特定のレイアウトでそれを処理する方法を考えるときに、どのようにより柔軟になるかを説明します。 たまたまサイドバーがあるだけです。 そして たまたまそうなる の専門です :has()、素敵な少量で磨き上げられました @container


こんなことになるとは知りませんでしたが、とても気に入っていますし、直感的に理解できました。ウナさんはこう説明する スタイルクエリの範囲構文


@container style(--rain-percent > 45%) {
  .weather-card {
    background: linear-gradient(140deg, skyblue, lightblue);
  }
}Code language: CSS (css)

私の脳は今どうやって動いていますか line-height 多くの場合、吸い込まれる必要があります。 font-size 上がります。したがって、これらがカスタム プロパティを活用していると仮定すると、次のようなものがクールになる可能性があります。

@container style(--font-size > 2rem) {
  line-height: 1;
}Code language: CSS (css)

しかし、カスタム プロパティを設定したのと同じ要素に対してコンテナ クエリを実行できないという事実によって、私の熱意は弱まります。したがって、次のようには機能しません:

h1, h2, h3 {
  font-size: var(--header-font-size, 1.5rem);
  @container style(--header-font-size > 2rem) {
    line-height: 1;
  }
}

h1 {
  --header-font-size: 3rem;
}Code language: CSS (css)

私の言いたいことはわかります 動作バージョンはこちら

設定してるから --header-font-size テストしているのと同じ「レベル」で @container それはうまくいきません。少なくとも 1 つ上の DOM レベルに設定する必要がありますが、これはおそらくこのような要素に対して行うことではありません。いやぁ、それでもカッコいいですね。


感謝します ローマ・コマロフは細部にまでこだわっています。このウェブサイト インク&スイッチ このようなラフな手書きの下線が付いています。しかし、彼らが 包む ラッピングエッジは「ハードカット」です。しかし、そうである必要はありません。 CSS プロパティ box-decoration-break: clone 完全に修正します。美しい。ブラウザのサポートは完璧ではないので、これを知らない人がいるのは少し許せます。そしてさらに、それが始まるという事実は、 box- それは何かと関係があるのではないかと思わせる box-shadow しかし、実際は次のとおりです(これを取得してください)。 border-radiusborder-imagebox-shadow、 そして background。これは、あなたとすべての CSS 学習者のための、バーに関する優れたトリビアです。


私の有害な特性は、物事の勝者を宣言するのが好きなことです。どうやって アップルが勝ったのは、 grid-lanes 😬。あるいはどのようにして oklch() は、モダンなカラー形式の勝者です。それらのトピックにふさわしいニュアンスを与える代わりに。使用するだけでマッスルメモリーもたくさんあります rem どこにでもユニットがいて、彼らが勝利ユニットであると考えられています。しかし、それはほぼ間違いなく狭すぎる意見です。実際、それはおそらく特定のユニットではありませんが、ミリアムが言うように 最適な CSS ユニットは組み合わせかもしれません: どちらかを選択する必要はありません px そして rem 間隔を空けるために。

.card {
  
  --min: min(1lh, 2vi);

  
  --nearest-half: round(up, 2vi, 0.5lh);
}Code language: CSS (css)



Source link

Views: 0

RELATED ARTICLES

返事を書く

あなたのコメントを入力してください。
ここにあなたの名前を入力してください

- Advertisment -