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 が条件付きでできるのと同じ方法でターゲットにすることはできません。

標準のスタイルシート内で機能する可能性のあるハックがいくつかありますが、実際には、Safari をサポートする方法で html/css を調整することによって最適なサービスが提供されます (通常、IE よりもはるかに手間のかからないタスクです)。

于 2013-03-04T18:49:01.770 に答える