Ninguna de las respuestas dice sobre la forma, cuando tendré .css.erb
extensión, cómo hacer referencia a las imágenes . Para mí trabajé tanto en producción como en desarrollo :
2.3.1 CSS y ERB
La canalización de activos evalúa automáticamente ERB . Esto significa que si agrega una extensión erb a un activo CSS (por ejemplo, application.css.erb
), los ayudantes similares asset_path
están disponibles en sus reglas CSS:
.class { background-image: url(<%= asset_path 'image.png' %>) }
Esto escribe la ruta al activo particular al que se hace referencia. En este ejemplo, tendría sentido tener una imagen en una de las rutas de carga de activos, como app/assets/images/image.png
, que se mencionará aquí. Si esta imagen ya está disponible public/assets
como un archivo de huellas digitales, entonces se hace referencia a esa ruta.
Si desea usar un URI de datos, un método para incrustar los datos de la imagen directamente en el archivo CSS , puede usar el asset_data_uri
ayudante.
.logo { background: url(<%= asset_data_uri 'logo.png' %>) }
Esto inserta un URI de datos con el formato correcto en la fuente CSS.
Tenga en cuenta que la etiqueta de cierre no puede ser del estilo -%>.