1

Safari ブラウザーでは、標準の <asp:Menu> はまったく適切にレンダリングされません。これはどのように修正できますか?

4

4 に答える 4

3

アドバイスをありがとう、それは私を次の解決策に導きました。

「safari.browser」という名前のファイルを作成し、App_Browsers ディレクトリに配置しました。このファイルの内容を以下に示します。

<browsers>
    <browser refID="safari1plus">
        <controlAdapters>
            <adapter controlType="System.Web.UI.WebControls.Menu" adapterType="" />
        </controlAdapters>
    </browser>
</browsers>

私が理解しているように、これはASP.NETに、コントロールコンテンツをレンダリングするために通常使用するアダプターを使用せず、代わりにアップレベルレンダリングを使用するように指示します。

于 2008-09-24T14:53:40.843 に答える
1

ControlAdaptersを使用して、サーバーコントロールのレンダリングを変更できます。

次に例を示します: http ://www.pluralsight.com/community/blogs/fritz/archive/2007/03/27/46598.aspx

しかし、私の意見では、純粋なcss(多くのサイトで利用可能)のメニューコントロールを放棄することは、同じ量の作業である可能性があります。

于 2008-09-24T12:00:40.790 に答える
0

この問題に対して私が見つけた最善かつ最も簡単な解決策は、このコードを page_load イベントに含めることです。

if (Request.UserAgent.IndexOf("AppleWebKit") > 0)
    Request.Browser.Adapters.Clear();
于 2009-06-10T17:34:34.763 に答える
0

Oooof - web.config に browserCaps アイテムを適切な値などで追加する単純なケースになることを望んでいました...

于 2008-09-24T13:30:20.713 に答える