无法仅针对 opera 40.0 应用特定 CSS
Unable to apply specific CSS only for opera 40.0
我尝试了几个堆栈溢出链接,其中 CSS 歌剧黑客是:-
@media not all and (-webkit-min-device-pixel-ratio:0) { /*opera*/
selector{
}
}
在 opera ver40.0 中它不起作用。我也试过关于这个 post 的答案:-
How to make CSS visible only for Opera
然后我分别为chrome、firefox、ie和opera写了几个媒体查询是这样的:-
@media not all and (-webkit-min-device-pixel-ratio:0) { /*opera*/
#selector {
margin-top:-20px;
}
}
@media screen and (-webkit-min-device-pixel-ratio:0) { /*chrome*/
#selector{
margin-top:-10px;
}
}
@media not all and (-moz-windows-compositor) { /*firefox*/
#selector{
margin-top:-10px;
}
}
@media screen and (min-width:0[=12=]) { /* IE */
#selector{
margin-top:-10px;
}
}
它适用于 chrome,即 firefox,但在 opera 中则不起作用。当我在 Opera 中检查开发人员工具时,它取而代之的是 CSS of chrome。现在你可能想知道为什么不为 chrome 使用它,但我不能,因为 margin-top 在歌剧中使用 -10px 渲染方式很远,所以我只需要 -20px 在歌剧中。
由于没有仅基于 CSS 的黑客可用,javascript 浏览器检测对我有用,然后我使用 jquery 覆盖 css,如下所示: -
var isOpera = (!!window.opr && !!opr.addons) || !!window.opera || navigator.userAgent.indexOf(' OPR/') >= 0;
if(isOpera){
$(selector).css('margin-top','-30px');
}
我尝试了几个堆栈溢出链接,其中 CSS 歌剧黑客是:-
@media not all and (-webkit-min-device-pixel-ratio:0) { /*opera*/
selector{
}
}
在 opera ver40.0 中它不起作用。我也试过关于这个 post 的答案:- How to make CSS visible only for Opera
然后我分别为chrome、firefox、ie和opera写了几个媒体查询是这样的:-
@media not all and (-webkit-min-device-pixel-ratio:0) { /*opera*/
#selector {
margin-top:-20px;
}
}
@media screen and (-webkit-min-device-pixel-ratio:0) { /*chrome*/
#selector{
margin-top:-10px;
}
}
@media not all and (-moz-windows-compositor) { /*firefox*/
#selector{
margin-top:-10px;
}
}
@media screen and (min-width:0[=12=]) { /* IE */
#selector{
margin-top:-10px;
}
}
它适用于 chrome,即 firefox,但在 opera 中则不起作用。当我在 Opera 中检查开发人员工具时,它取而代之的是 CSS of chrome。现在你可能想知道为什么不为 chrome 使用它,但我不能,因为 margin-top 在歌剧中使用 -10px 渲染方式很远,所以我只需要 -20px 在歌剧中。
由于没有仅基于 CSS 的黑客可用,javascript 浏览器检测对我有用,然后我使用 jquery 覆盖 css,如下所示: -
var isOpera = (!!window.opr && !!opr.addons) || !!window.opera || navigator.userAgent.indexOf(' OPR/') >= 0;
if(isOpera){
$(selector).css('margin-top','-30px');
}