tipos para paginas lista hojas etiquetas estilos estilo enlazar ejemplos codigos css asp.net-mvc razor

para - lista de codigos css



¿Cómo hacer referencia a un archivo.css en una vista de afeitar? (5)

Sé cómo establecer archivos .css en el archivo _Layout.cshtml, pero ¿qué hay de aplicar una hoja de estilo en cada vista?

Lo que pienso aquí es que, en _Layout.cshtml, tiene etiquetas <head> con las que trabajar, pero no en una de las vistas que no son de diseño. ¿A dónde van las etiquetas <link> ?


Intenté agregar un bloque así:

@section styles{ <link rel="Stylesheet" href="@Href("~/Content/MyStyles.css")" /> }

Y un bloque correspondiente en el archivo _Layout.cshtml:

<head> <title>@ViewBag.Title</title> @RenderSection("styles", false); </head>

¡Lo cual funciona! Pero no puedo evitar pensar que hay una mejor manera. ACTUALIZACIÓN: se agregó "falso" en la declaración @RenderSection para que su vista no se dispare cuando no agrega una @section llamada head .


Para CSS que se reutilizan en todo el sitio, los defino en la sección <head> de _Layout :

<head> <link href="@Url.Content("~/Styles/main.css")" rel="stylesheet" type="text/css" /> @RenderSection("Styles", false) </head>

y si necesito algunos estilos específicos de vista, defino la sección Styles en cada vista:

@section Styles { <link href="@Url.Content("~/Styles/view_specific_style.css")" rel="stylesheet" type="text/css" /> }

Editar: es útil saber que el segundo parámetro en @RenderSection, falso, significa que la sección no es necesaria en una vista que utiliza esta página maestra, y el motor de vista ignorará felizmente el hecho de que no hay una sección de "Estilos" definida en tu opinión. Si es verdadero, la vista no se renderizará y se lanzará un error a menos que se haya definido la sección "Estilos".


Puede esta estructura en el archivo Layout.cshtml

<link href="~/YourCssFolder/YourCssStyle.css" rel="stylesheet" type="text/css" />


Utilizando

@Scripts.Render("~/scripts/myScript.js")

o

@Styles.Render("~/styles/myStylesheet.css")

podría funcionar para ti.

https://.com/a/36157950/2924015