Không có câu trả lời nào nói về cách thức, khi tôi có .css.erb
tiện ích mở rộng, cách tham chiếu hình ảnh . Đối với tôi làm việc cả trong sản xuất và phát triển là:
2.3.1 CSS và ERB
Đường ống tài sản tự động đánh giá ERB . Điều này có nghĩa là nếu bạn thêm tiện ích mở rộng erb vào tài sản CSS (ví dụ application.css.erb
:), thì những người trợ giúp nhưasset_path
có sẵn trong quy tắc CSS của bạn:
.class { background-image: url(<%= asset_path 'image.png' %>) }
Điều này viết đường dẫn đến tài sản cụ thể được tham chiếu. Trong ví dụ này, sẽ có ý nghĩa khi có một hình ảnh trong một trong các đường dẫn tải tài sản, chẳng hạn nhưapp/assets/images/image.png
, sẽ được tham chiếu ở đây. Nếu hình ảnh này đã có sẵn public/assets
dưới dạng tệp dấu vân tay, thì đường dẫn đó được tham chiếu.
Nếu bạn muốn sử dụng URI dữ liệu - phương pháp nhúng dữ liệu hình ảnh trực tiếp vào tệp CSS - bạn có thể sử dụngasset_data_uri
trợ giúp.
.logo { background: url(<%= asset_data_uri 'logo.png' %>) }
Điều này sẽ chèn một URI dữ liệu được định dạng chính xác vào nguồn CSS.
Lưu ý rằng thẻ đóng không thể có kiểu -%>.