2014-02-11 13 views
1

Я занимаюсь связями и минимизацией с использованием инфраструктуры веб-оптимизации Microsoft.Усовершенствование веб-оптимизации для браузеров

Как настроить доставку контента в зависимости от браузера? Я хочу, чтобы поведение похоже на условные CSS-файлы в отсутствии комплектации:

<!--[if lt IE 9]><link rel="stylesheet" href="~/Templates/Styles/ie.css"><![endif]--> 

Это мой код комплектации в настоящее время.

public static void RegisterBundles(BundleCollection bundles) 
{ 
    bundles.Add(new StyleBundle("~/Templates/Styles") 
     .IncludeDirectory("~/Templates/Styles","*.css", true)); 

    // OR 
    bundles.Add(new StyleBundle("~/Templates/Styles") 
      .Included("~/Templates/Styles/f5/normalize.css", 
      "~/Templates/Styles/f5/foundation.css", 
      "~/Templates/Styles/tipTip.css") 
     ); 
} 

Возможна ли условная комплектация? Или я должен использовать традиционные разделенные ссылки в тексте в своем HTML, в файлы, содержащие условные части моего CSS?

ответ

1

Если вы посмотрите в формат по умолчанию System.Web.Optimization.Scripts.DefaultTagFormat на, вы обнаружите, что у вас есть что-то вроде:

<script src='{0}'></script> 

Таким образом, единственное, что вам нужно сделать, это определить новый формат. Вы можете сделать это, используя метод «RenderFormat», например:

<%: System.Web.Optimization.Scripts.RenderFormat("<!--[if lt IE 9]><script src='{0}'></script><![endif]-->", "~/bundles/IE9js") %> 

 Смежные вопросы

  • Нет связанных вопросов^_^