html - 根据宽度渲染动态生成的背景

标签 html css ruby-on-rails sass haml

所以我有一个背景图像属性(作为引用元素中图像的字符串),它属于 Badge 表。

我正在根据当前路径渲染每个背景图像。但我想以两个不同的最大宽度渲染不同的图像。

例如,

.badge-headline-background{style: "background-image:url(../assets/header-graphics/#{@badge.background})"}

以全宽呈现背景,而

.badge-headline-background{style: "background-image:url(../assets/small-header-graphics/#{@badge.background})"}

一旦最大宽度达到 700 像素左右,就应该使用较小的图像。

调整背景位置和背景大小不是一种选择。它必须是两个单独的图像。

任何意见表示赞赏。 谢谢!

最佳答案

这应该可以,使用动态值

.badge-headline-background

:css
  .badge-headline-background { 
    background-image: url("../assets/header-graphics/#{@badge.background}");
  }
  @media (max-width: 700px) {
    .badge-headline-background { 
      background-image: url("../assets/small-header-graphics/#{@badge.background}");
    }
  }

关于html - 根据宽度渲染动态生成的背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30850220/

相关文章:

javascript - 多个模态无法正常工作

ruby-on-rails - 错误,Ruby on Rails: Encoding::UndefinedConversionError in CoursesController#attachment "\xFF"从 ASCII-8BIT 到 UTF-8

javascript - Ember Fixture Adapter 未设置记录 ID

javascript - 将 Javascript 格式化为 CoffeeScript

html - 将 column-count 与::before 一起使用

javascript - jquery .hide() 函数 - 隐藏手机,显示桌面

jquery - 如何使用 Backbone.js 从表单中获取新的输入文本

jQuery 到 "attach"一个 div 到一个 li?

css - 如何样式/aligh xp :pager control?

html - 带有 svg 图像的 css 过渡只能以一种方式工作