在皮肤文件中确定Safari浏览器

本文关键字:Safari 浏览器 文件 | 更新日期: 2023-09-27 18:02:14

我正在dnn6门户中工作,并在我的skinpage.ascx中使用此代码。但是它不加载SafariSkin.css。

     <!--[if Safari]>
     <link href="SafariSkin.css" rel="stylesheet" type="text/css" />
     <![endif]-->
     <!--[if !Safari]>
     <link href="Skin.css" rel="stylesheet" type="text/css" />
     <![endif]-->

,但如果我改变条件为"IE",它的工作。为什么?

我还在

中使用以下代码:
     <dnn:STYLES runat="server" ID="Stylesnotsafari" Name="notsafari" StyleSheet="SafariSkin.css" Condition="Safari" UseSkinPath="true"/>

,当条件是IE时,它可以正常工作。任何想法?

我该怎么做有"safari"条件??

在皮肤文件中确定Safari浏览器

由于您在ascx文件中,因此可以使用服务器代码来确定浏览器。

<link href="<%= Request.Browser.Browser == "Safari" ? "SafariSkin.css" : "NotSafari.css" %>" rel="stylesheet" type="text/css" />

要使其工作,请确保皮肤的语言是c#(第一行,它说language="vb",更改为language="c#"),或者将上面的代码修改为VB.net。

此外,对于旧版本的。net, Safari浏览器不能正确识别。如果是这种情况,请阅读更多内容,例如在http://www.velocityreviews.com/forums/t119465-asp-net-2-0-vs-safari-browser.html手动更新浏览器检测。

Safari不能像IE那样通过条件来定位。

有一些技巧可以在你的标准样式表中工作,但实际上你最好以一种支持Safari的方式调整你的html/css(一项任务通常比IE少得多的劳动密集型)。