2012-04-26 55 views
6

在我的CSS我需要插入樣式表的一些PHP代碼

div.image { 
    width:<?php echo get_image_size($size[1]); ?>px; 
} 

大小存儲在數組中,所以我叫$大小[1]在這裏......

我在初學php ...

任何人都可以幫忙嗎?

+2

你的理由是什麼?你是從數據庫定義圖像維度嗎?我不會將CSS與PHP混合,如果你是,你需要重新思考你在做什麼。 – Jakub 2012-04-26 12:26:47

+0

更好的解決方案是直接在圖像上設置;) Stony 2012-04-26 12:34:53

回答

1

對於您需要使用這樣的

  1. 改變你的CSS文件css.php,並使用樣式表包括這樣

    <link rel="stylesheet" type="text/css" href="css.php?opt1=<?php echo get_image_size($size[1]); ?>" />

  2. 在css.php文件

    div.image { width:<?php echo $_GET['opt1']; ?>px; }

試試這個

8

更好的辦法是設置的CSS/PHP文件頭在我的例子cssfile.php:

<?php header("Content-type: text/css"); ?> 

然後你可以使用PHP文件作爲風格。

<link rel="stylesheet" type="text/css" href="cssfile.php?param=1" /> 

然後你應該得到你的網站的輸出。但有了這個解決方案,你應該非常小心,如果你有很多流量。在每個站點調用您的PHP解釋器用於傳遞該文件。

1

一種方法是將特定的部分移出.css文件,並將其插入可訪問get_image_size()函數的PHP文檔中。例如,您可能有一個解析爲標題的模板。然後,您可以在<style>標籤中包圍這件作品。

3

更改擴展.PHP,然後在你的樣式表的說:

<?php header("Content-type: text/css"); ?> 

然後你可以使用PHP樣式表內。

4

對於這個特定的實例是的,如果你只需要在這一行上使用php,最好插入你的html頭部,而不是讓php爲你製作一個完整的css文件。

<style type="text/css"> 
    div.image { 
    width:<?php echo get_image_size($size[1]); ?>px; 
    }  
</style> 

除非絕對必要,否則PHP不應創建靜態資產。如果流量很高,您會注意到性能受到影響。

3

也許你應該這樣做:

<div class="image"> 
    <img src="image.gif" /> 
</div> 

CSS:

div.image img{ 
    width: 100% 
} 

與將時尚裏的html的問題是,一切都搞的一團糟。你應該儘可能地將html和css和js分開。

另外,從我的觀點來看,在css或js文件中使用php並不是一個好習慣。

考慮檢查一下你的html佈局來優化它。