Как мне заставить <asp: menu> работать в Safari? - PullRequest
1 голос
/ 24 сентября 2008

В браузере Safari стандартное отображается плохо. Как это можно исправить?

Ответы [ 4 ]

3 голосов
/ 24 сентября 2008

Спасибо за совет, он привел меня к следующему решению;

Я создал файл с именем "safari.browser" и поместил его в каталог App_Browsers. Содержание этого файла показано ниже;

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

Насколько я понимаю, это говорит ASP.NET не использовать адаптер, который обычно используется для визуализации содержимого элемента управления, а вместо этого использовать рендеринг верхнего уровня.

1 голос
/ 24 сентября 2008

Вы можете использовать ControlAdapters для изменения рендеринга серверных элементов управления.

Вот пример: http://www.pluralsight.com/community/blogs/fritz/archive/2007/03/27/46598.aspx

Хотя, по моему мнению, было бы равным количеством работы отказаться от управления меню для чистого CSS (доступно на многих сайтах).

0 голосов
/ 10 июня 2009

Лучшее и простое решение, которое я нашел для этой проблемы, - включить этот бит кода в событие page_load.

if (Request.UserAgent.IndexOf("AppleWebKit") > 0)
    Request.Browser.Adapters.Clear();
0 голосов
/ 24 сентября 2008

Oooof - надеялся, что это будет простой случай добавления элемента browserCaps в web.config с соответствующими значениями или подобным ...

...