2011-05-30 47 views
0

我想爲IE加載另一個CSS。我正在使用Symfony 1.2。什麼是最快的方法?我寧願不使用「view.yml」技術。我想有這樣的事情在我的腦海節:有條件即CSS包含在Symfony 1.2中

<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

我看不出有什麼問題。只需將此代碼放入您的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目錄。

+0

看起來不錯..我稍後再試一試。 – Jojje 2011-05-30 12:24:18

+0

Thanks :) that works – Jojje 2011-05-30 18:56:30

0

Symfony不支持條件註釋。

將它完全放入佈局文件中的最簡單的方法是使用public_path幫助程序,而不是硬編碼href屬性。

+0

?對不起,你能舉個例子嗎? – Jojje 2011-05-30 11:04:50

+0

@Jojje你得到了另一個答案,我的意思幾乎沒有。 – Maerlyn 2011-05-30 14:27:00

6

Symfony的支持有條件的CSS和JS,我看不出理由不使用的view.yml - 這是不夠的view.yml文件寫的(如應用程序/前端/配置/的view.yml)

CSS:

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

JS:

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

It works。謝謝 – Mikhail 2012-09-01 09:34:12

1

另一種選擇是使用方法addStylesheet的行動。 例如:

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