1. ホーム
  2. html

[解決済み] ng-deepの代わりに何を使うか?

2022-05-12 17:59:57

質問

angularのルーター出口に配置された要素にスタイルを設定しようとしているのですが、生成された要素が100%の幅を取得することを確認したいのです。

多くの回答から、私は ::ng-deep セレクタを使用していますが、Angularの ドキュメント は非推奨とされています。に代わるものはありますか? ::ng-deep ?

解決方法は?

参考までに、私の調査では、ng-deepやその他の適用可能な代替案は見つかっていません。これは、Angularチームがshadow domに関するW3Cの仕様に従ったためだと思われ、当初は次のようなセレクタがありました。 deep . しかし、その後、W3cは勧告を削除しましたが、新しい勧告に置き換えていません。そうなるまで、Angularチームはこのまま ::ng-deep とその代替品を利用することができますが、W3Cの草案が保留中のため、非推奨の状態になっています。今、これを裏付けるドキュメントを探すのに時間がとれないのですが、最近見たのです。

長い話をまとめると ::ng-deep この非推奨は、実際の変更が実現したときに人々が驚かないようにするための、単なる早期通知です。

-- アップデイト --

https://drafts.csswg.org/css-scoping-1/ ご興味のある方は、こちらが提案書案です。彼らはshadow domツリー内の要素に対する堅牢なセレクタのセットに取り組んでいるようです。この仕様が承認されれば、angularクローンが存在するとしても、それに情報を提供すると思います(つまり、これがブラウザで公開されればangularは独自のセレクタを実装する必要がなくなるかもしれません)。