次の CSS を特定div
の Google Chrome のみに適用する方法はありますか?
position:relative;
top:-2px;
次の CSS を特定div
の Google Chrome のみに適用する方法はありますか?
position:relative;
top:-2px;
CSS ソリューション
https://jeffclayton.wordpress.com/2015/08/10/1279/より
/* Chrome, Safari, AND NOW ALSO the Edge Browser and Firefox */
@media screen and (-webkit-min-device-pixel-ratio:0) {
div{top:10;}
}
/* Chrome 29+ */
@media screen and (-webkit-min-device-pixel-ratio:0)
and (min-resolution:.001dpcm) {
div{top:0;}
}
/* Chrome 22-28 */
@media screen and(-webkit-min-device-pixel-ratio:0) {
.selector {-chrome-:only(;
property:value;
);}
}
JavaScript ソリューション
if (navigator.appVersion.indexOf("Chrome/") != -1) {
// modify button
}
私たちが知っているように、Chrome はWebkitブラウザーであり、Safari も Webkit ブラウザーであり、Opera も同様です。そのため、メディア クエリや CSS ハックを使用して Google Chrome をターゲットにすることは非常に困難ですが、Javascript は実際にはより効果的です。
これは、Google Chrome 14 以降を対象とする Javascript コードの一部です。
var isChrome = !!window.chrome && !!window.chrome.webstore;
以下は、影響を受けたブラウザを含む Google chrome で利用可能なブラウザ ハックのリストです。
.selector:not(*:root) {}
@supports (-webkit-appearance:none) {}
Google Chrome 28、および Google Chrome > 28、Opera 14 および Opera > 14
.selector { (;property: value;); }
.selector { [;property: value;]; }
Google Chrome 28、および Google Chrome < 28、Opera 14 および Opera > 14、および Safari 7 および 7 未満。
var isChromium = !!window.chrome;
var isWebkit = 'WebkitAppearance' in document.documentElement.style;
var isChrome = !!window.chrome && !!window.chrome.webstore;
@media \\0 screen {}
@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) { .selector {} }
詳細については、このウェブサイトをご覧ください
この CSS ブラウザー セレクターが役立つ場合があります。見てください。
CSS Browser Selector は、CSS セレクターを強化する 1 行だけの非常に小さな JavaScript です。これにより、各オペレーティング システムおよび各ブラウザーに固有の CSS コードを記述できるようになります。
http://www.templatemonster.com/help/how-to-create-browser-specific-css-rules-styles.html
.selector:not(*:root)
セレクターで使用して、特定の CSS ルールを Chrome のみに適用します。
div {
color: forestgreen;
}
.selector:not(*:root), .div1 {
color: #dd14d5;
}
<div class='div1'>DIV1</div>
<div class='div2'>DIV2</div>
今まで、Chrome のみの css ハックをしなければならなかったインスタンスに出くわしたことはありません。ただし、これにより、clear:both; のスライドショーの下にコンテンツが移動することがわかりました。Chrome では何も影響しませんでした (ただし、他の場所では問題なく動作しました - IE でも!)。
@media screen and (-webkit-min-device-pixel-ratio:0) {
/* Safari and Chrome, if Chrome rule needed */
.container {
margin-top:100px;
}
/* Safari 5+ ONLY */
::i-block-chrome, .container {
margin-top:0px;
}
Chrome には、CSS 定義を設定するための独自の条件はありません。Chrome は w3c 標準で定義されているように Web サイトを解釈するため、これを行う必要はありません。
したがって、次の 2 つの意味のある可能性があります。
/* saf3+, chrome1+ */
@media screen and (-webkit-min-device-pixel-ratio:0) {
/*your rules for chrome*/
#divid{
position:relative;
top:-2px;
}
}
これをチェックしてください。それは私のために働きます。