Rails 3.1 中的条件 CSS 渲染
Rails 3.1 资产管道提供了强大的机制来管理静态资产(包括 CSS 文件)。然而,根据特定标准有条件地渲染 CSS 可能是一项具有挑战性的任务。
默认方法
默认情况下,*= require_tree 命令包含资产/样式表目录。这种方法可能会导致 CSS 包过大且无法读取。
单独文件包含
作为解决方法,您可以在 application.css 中手动单独指定每个 CSS 文件显现。虽然此方法提供了更精细的控制,但它可能乏味且不灵活。
更智能的解决方案
更优雅的解决方案涉及使用单独的清单文件将 CSS 要求分解为逻辑组。这种方法允许您自动添加新样式表,而无需手动编辑。
第 1 步:重新组织资源结构
首先重新组织您的 app/assets/stylesheets 文件夹进入以下结构:
- all:包含您的基本样式表和任何适用的样式表
- print:包含特定于打印的样式表。
- ie:包含特定于 Internet Explorer 浏览器的样式表。
- application-all.css:一个清单文件,包含“all”目录中的所有 CSS 文件。
- application-print.css:包含“all”目录中的所有 CSS 文件的清单文件“print”目录。
- application-ie.css:清单文件,包含“ie”目录中的所有 CSS 文件。
第 2 步:编辑清单文件
接下来,编辑三个清单文件,如图所示下面:
# application-all.css *= require_self *= require_tree ./all # application-print.css *= require_self *= require_tree ./print # application-ie.css *= require_self *= require_tree ./ie
第 3 步:更新应用程序布局
修改您的应用程序布局以包含新的清单文件:
"all" %> "print" %> <!--[if lte IE 8]> <%= stylesheet_link_tag "application-ie", :media => "all" %> <![endif]-->
第 4 步:配置生产环境
添加新的清单文件到您的 config/environments/development.rb:
config.assets.precompile += %w( application-all.css application-print.css application-ie.css )
图像引用注意事项
请注意,这种条件渲染方法可能会影响样式表中的图像引用。为了确保正确的图像加载,您可以移动图像以遵循相同的文件夹结构、限定图像路径或使用 SASS 帮助程序 image-url('image.png')。
以上是如何在 Rails 3.1 中实现条件 CSS 渲染?的详细内容。更多信息请关注PHP中文网其他相关文章!

是的,youshouldlearnbothflexboxandgrid.1)flexboxisidealforone-demensional,flexiblelayoutslikenavigationmenus.2)gridexcelstcelsintwo-dimensional,confffferDesignssignssuchasmagagazineLayouts.3)blosebothenHancesSunHanceSlineHancesLayOutflexibilitibilitibilitibilitibilityAnderibilitibilityAndresponScormentilial anderingStruction

重构自己的代码看起来是什么样的?约翰·瑞亚(John Rhea)挑选了他写的一个旧的CSS动画,并介绍了优化它的思维过程。

CSSanimationsarenotinherentlyhardbutrequirepracticeandunderstandingofCSSpropertiesandtimingfunctions.1)Startwithsimpleanimationslikescalingabuttononhoverusingkeyframes.2)Useeasingfunctionslikecubic-bezierfornaturaleffects,suchasabounceanimation.3)For

@keyframesispopularduetoitsversatoryand and powerincreatingsmoothcssanimations.keytricksinclude:1)definingsmoothtransitionsbetnestates,2)使用AnimatingmatematingmultationmatingMultationPropertiessimultane,3)使用使用4)使用BombingeNtibalibility,4)使用BombingingWithjavofofofofofoffo

CSSCOUNTERSAREDOMANAGEAUTOMANAMBERINGINWEBDESIGNS.1)他们可以使用forterablesofcontents,ListItems,and customnumbering.2)AdvancedsincludenestednumberingSystems.3)挑战挑战InclassINCludeBrowsEccerCerceribaliblesibility andperformiballibility andperformissises.4)创造性

使用滚动阴影,尤其是对于移动设备,是克里斯以前涵盖的一个微妙的UX。杰夫(Geoff)涵盖了一种使用动画限制属性的新方法。这是另一种方式。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

记事本++7.3.1
好用且免费的代码编辑器

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具