Mvc: рдмрдирд╛рдУ<link/> рдлрд╝реЙрд▓рдмреИрдХ рд╕реНрд░реЛрддреЛрдВ рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдЯреИрдЧ рд╣реЗрд▓реНрдкрд░

рдХреЛ рдирд┐рд░реНрдорд┐рдд 18 рдирд╡ре░ 2014  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: aspnet/Mvc

рдпрд╣ CSS рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ #1576 . рдХреЗ рд╕рдорддреБрд▓реНрдп рд╣реИ

рдПрдХ LinkTagHelper рдЬреЛ рдкреНрд░рд╛рдердорд┐рдХ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд╣реЛрдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдлрд╝реЙрд▓рдмреИрдХ рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ рдХреЗ рд╡рд┐рдирд┐рд░реНрджреЗрд╢рди рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╡рд┐рдлрд▓рддрд╛ рдХреЛ рдПрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╡рд░реНрдЧ рдирд╛рдо ( asp-fallback-test-class рд╡рд┐рд╢реЗрд╖рддрд╛) рдХреЗ рд╕рд╛рде рдПрдХ рдбрдореА <meta> рдЯреИрдЧ рдХреЛ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░рдХреЗ рдФрд░ рдлрд┐рд░ рдЙрд╕ рддрддреНрд╡ рдХреА рдЧрдгрдирд╛ рдХреА рдЧрдИ рд╢реИрд▓реА рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдХреЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдПрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реАрдПрд╕рдПрд╕ рд╕рдВрдкрддреНрддрд┐ ( asp-fallback-test-property рд╡рд┐рд╢реЗрд╖рддрд╛) рдПрдХ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдорд╛рди ( asp-fallback-test-value ) рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред

рдкреНрд░рдпреЛрдЧ

<link href=""
      asp-fallback-href=""
      asp-fallback-test-class=""
      asp-fallback-test-property=""
      asp-fallback-test-value="" />

рдЯреИрдЧ рд╣реЗрд▓реНрдкрд░ рдХреЛ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЙрдкрд╕реНрдерд┐рдд рд╣реЛрдирд╛ рдФрд░ рдЧреИрд░-рд╢реВрдиреНрдп рд╣реЛрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред рдпрджрд┐ рдХреЛрдИ рдЧрд╛рдпрдм рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдФрд░ рдиреЛ-рдСрдк рд▓реЙрдЧ рдХрд░реЗрдЧрд╛ред

рдмрд╣рд╕

| рд╡рд┐рд╢реЗрд╖рддрд╛ рдХрд╛ рдирд╛рдо | рдкреНрд░рдХрд╛рд░ | рд╡рд┐рд╡рд░рдг |
| --- | --- | --- |
| рдПрдПрд╕рдкреА-рдлрд╝реЙрд▓рдмреИрдХ-href | string | рдкреНрд░рд╛рдердорд┐рдХ рд╡рд┐рдлрд▓ рд╣реЛрдиреЗ рдкрд░ рд╡рд╛рдкрд╕ рдЖрдиреЗ рд╡рд╛рд▓рд╛ URL (рдЬреИрд╕рд╛ рдХрд┐ href рд╡рд┐рд╢реЗрд╖рддрд╛ рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИ) |
| рдПрдПрд╕рдкреА-рдлрд╝реЙрд▓рдмреИрдХ-рдЯреЗрд╕реНрдЯ-рдХреНрд▓рд╛рд╕ | string | рдлрд╝реЙрд▓рдмреИрдХ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╡рд░реНрдЧ рдХрд╛ рдирд╛рдо |
| рдПрдПрд╕рдкреА-рдлрд╝реЙрд▓рдмреИрдХ-рдЯреЗрд╕реНрдЯ-рдкреНрд░реЙрдкрд░реНрдЯреА | string | рдлрд╝реЙрд▓рдмреИрдХ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ CSS рдЧреБрдг рдирд╛рдо |
| рдПрдПрд╕рдкреА-рдлрд╝реЙрд▓рдмреИрдХ-рдЯреЗрд╕реНрдЯ-рд╡реИрд▓реНрдпреВ | string | рдлрд╝реЙрд▓рдмреИрдХ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП CSS рдЧреБрдг рдорд╛рди |

рдЙрджрд╛рд╣рд░рдг

рд╕реНрд░реЛрдд рд╕реАрдПрд╕рдПрдЪрдЯреАрдПрдордПрд▓

 <link href="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet"
       asp-fallback-href="~/lib/bootstrap/css/bootstrap.min.css"
       asp-fallback-test-class="hidden" asp-fallback-test-property="visibility" asp-fallback-test-value="hidden" />

рдЖрдЙрдЯрдкреБрдЯ рдПрдЪрдЯреАрдПрдордПрд▓

<link href="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet" />
<meta name="x-stylesheet-fallback-test" class="hidden" />
<script>
    (function (a, b, c) {
        var d = document,
            s = d.getElementsByTagName("SCRIPT"),
            meta = s[s.length-1].previousSibling;
        (d.defaultView.getComputedStyle(meta)[a] === b ||
            d.write('\u003clink rel="stylesheet" href="' + c + '" /\u003e'));
    })("visibility", "hidden", "/lib/bootstrap/css/bootstrap.min.css");
</script>
3 - Done enhancement feature-Tag-Helpers

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдкреБрд░рд╛рдиреЗ/рдмрдВрдж рдореБрджреНрджреЗ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИред рдХреНрдпрд╛ .css рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд▓рд┐рдП рдХрднреА рдХреЛрдИ рдЪрд░реНрдЪрд╛ рд╣реБрдИ рдЬрд┐рд╕рдореЗрдВ рдПрдХрд╡рдЪрди рд╡рд░реНрдЧ рдирд╣реАрдВ рд╣реИрдВ?

рджреЛ рдЙрджрд╛рд╣рд░рдг:

  • dataTables.bootstrap.css рдореЗрдВ table.dataTable { ... } рдЬреИрд╕реЗ рдХрдо рд╕реЗ рдХрдо рджреЛ рдЪрдпрдирдХрд░реНрддрд╛ рдЬрдВрдЬреАрд░ рдореЗрдВ рдмрдВрдзреЗ рд╣реЛрддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдХреЛрдИ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди .dataTable рд╡рд░реНрдЧ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред

  • рдЗрд╕реА рддрд░рд╣ skin-red.css рдХреЗ рд╕рд╛рде , рдХреЗрд╡рд▓ .skin-red .main-header .navbar { ... } рдЬреИрд╕реЗ рд╡рдВрд╢рдЬ рдЪрдпрдирдХрд░реНрддрд╛ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдХреЛрдИ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди .skin-red рд╡рд░реНрдЧ рдирд╣реАрдВ рд╣реИред

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдкреБрд░рд╛рдиреЗ/рдмрдВрдж рдореБрджреНрджреЗ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИред рдХреНрдпрд╛ .css рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд▓рд┐рдП рдХрднреА рдХреЛрдИ рдЪрд░реНрдЪрд╛ рд╣реБрдИ рдЬрд┐рд╕рдореЗрдВ рдПрдХрд╡рдЪрди рд╡рд░реНрдЧ рдирд╣реАрдВ рд╣реИрдВ?

рджреЛ рдЙрджрд╛рд╣рд░рдг:

  • dataTables.bootstrap.css рдореЗрдВ table.dataTable { ... } рдЬреИрд╕реЗ рдХрдо рд╕реЗ рдХрдо рджреЛ рдЪрдпрдирдХрд░реНрддрд╛ рдЬрдВрдЬреАрд░ рдореЗрдВ рдмрдВрдзреЗ рд╣реЛрддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдХреЛрдИ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди .dataTable рд╡рд░реНрдЧ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред

  • рдЗрд╕реА рддрд░рд╣ skin-red.css рдХреЗ рд╕рд╛рде , рдХреЗрд╡рд▓ .skin-red .main-header .navbar { ... } рдЬреИрд╕реЗ рд╡рдВрд╢рдЬ рдЪрдпрдирдХрд░реНрддрд╛ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдХреЛрдИ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди .skin-red рд╡рд░реНрдЧ рдирд╣реАрдВ рд╣реИред

@ kylef000 рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреЛрдИ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рддрд░реАрдХреЗ рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХреИрд╕реЗ рдХрд░реЗрдЧрд╛ рдЬреИрд╕реЗ рд╣рдо рдЗрдВрдЬреЗрдХреНрд╢рди <meta /> рддрддреНрд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

@DamianEdwards рдЖрд╣, рдареАрдХ рд╣реИред рдореИрдВрдиреЗ рдЗрд╕ рдорд╛рдорд▓реЗ рдкрд░ рдЕрдкрдиреА рд╕рд░рд╕рд░реА рдЦреЛрдЬ рдореЗрдВ рдЗрд╕ рд╕рдВрдмрдВрдз рдореЗрдВ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╣реБрдд рдХреБрдЫ рдирд╣реАрдВ рджреЗрдЦрд╛, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рд╕рдордп рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реЛред рд╕рдВрднрд╡рддрдГ рдЗрд╕рдХреЗ рдЖрд╕рдкрд╛рд╕ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдХрд╛рдВрдЯрд╛ рд╣реИ, рд╡реНрдпрдХреНрддрд┐рдЧрдд рдлрд╝рд╛рдЗрд▓ рдХреЗ рднреАрддрд░ рдПрдХ рдкрд░реАрдХреНрд╖рдг рд╡рд░реНрдЧ (рдЬреИрд╕реЗ .skin-red-fallback-test { ... } ) рдЬреЛрдбрд╝реЗрдВ, рдлрд┐рд░ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд▓рд┐рдП рдПрдХ рдкреАрдЖрд░ рдмрдирд╛рдПрдВ рдЬреЛ рдХреЛрдИ рднреА рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реЛред

рдЖрдкрдХреЗ рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рд╕реА # рд╕рднреА рдЪреАрдЬреЛрдВ рдкрд░ рдЖрдкрдХреЗ рдХрд╛рдо рдХреА рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рд░рд╛рд╣рдирд╛ рдХрд░реЗрдВ!

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕