我需要插入样式表的一些PHP代码

问题描述:

在我的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. 改变你的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; }

试试这个

更好的办法是设置的CSS/PHP文件头在我的例子cssfile.php:

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

然后你可以使用PHP文件作为风格。

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

然后你应该得到你的网站的输出。但有了这个解决方案,你应该非常小心,如果你有很多流量。在每个站点调用您的PHP解释器用于传递该文件。

一种方法是将特定的部分移出.css文件,并将其插入可访问get_image_size()函数的PHP文档中。例如,您可能有一个解析为标题的模板。然后,您可以在<style>标签中包围这件作品。

更改扩展.PHP,然后在你的样式表的说:

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

然后你可以使用PHP样式表内。

对于这个特定的实例是的,如果你只需要在这一行上使用php,最好插入你的html头部,而不是让php为你制作一个完整的css文件。

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

除非绝对必要,否则PHP不应创建静态资产。如果流量很高,您会注意到性能受到影响。

也许你应该这样做:

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

CSS:

div.image img{ 
    width: 100% 
} 

与将时尚里的html的问题是,一切都搞的一团糟。你应该尽可能地将html和css和js分开。

另外,从我的观点来看,在css或js文件中使用php并不是一个好习惯。

考虑检查一下你的html布局来优化它。