条件即css包含在Symfony 1.2中

时间:2011-05-30 09:19:05

标签: css symfony1

我想为IE加载另一个css。我正在使用Symfony 1.2。什么是最快的方式?我宁愿不使用“view.yml”技术。我希望在我的脑子里有类似的东西:

<link rel="stylesheet" href="css/screen.css" type="text/css" media="screen" />
      <!--[if lte IE 7]>
        <link rel="stylesheet" href="css/ie6.css" type="text/css" media="screen" /> 
<![endif]--> 

我目前在layout.php文件中有这个代码,用于包含样式表。

<?php include_http_metas() ?>
<?php include_metas() ?>
<?php use_stylesheet('style.css') ?>

你们知道任何快速的解决方案吗?

4 个答案:

答案 0 :(得分:6)

Symfony支持条件CSS和JS,我没有看到不使用view.yml的原因 - 只需在view.yml中写入(例如apps / frontend / config / view.yml)

CSS:

stylesheets:
 - ie6.css: { condition: IE 6 }

JS:

javascripts:
 - myiescript.js: { condition: IE 6 }

答案 1 :(得分:4)

我没有看到问题。只需将此代码放入layout.php

即可
<?php include_http_metas() ?>
<?php include_metas() ?>
<?php use_stylesheet('style.css') ?>
<!--[if lte IE 7]>
  <?php echo stylesheet_tag('ie6'); ?>
<![endif]-->

将ie6.css放入样式表目录。

这种方式非常简单,因为您不必硬编码到css目录的路径。

答案 2 :(得分:1)

另一个选择是在操作中使用方法addStylesheet。 例如:

$response->addStylesheet('ie8.css', '', array('condition' => 'IE 8'));

答案 3 :(得分:0)

Symfony不支持条件评论。

最简单的方法是将其完全放入布局文件中,但不要使用href属性进行硬编码,而是使用public_path帮助器。