1

我在 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 时它才能正常工作。任何想法??

我应该怎么做才能有“野生动物园”条件???

4

2 回答 2

2

由于您在 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以手动更新浏览器检测。

于 2013-03-04T20:33:03.820 回答
0

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

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

于 2013-03-04T18:49:01.770 回答