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

时间:2012-04-26 12:21:53

标签: php css

在我的CSS中

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

大小存储在一个数组中,所以我称之为$ size [1]到这里......

我是php的初学者......

任何人都可以帮忙吗?

6 个答案:

答案 0 :(得分:8)

更好的解决方案是在我的示例cssfile.php中为css / php文件设置标头:

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

然后你可以使用php文件作为样式。

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

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

答案 1 :(得分:4)

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

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

除非绝对必要,否则PHP不应该创建静态资产。如果流量很高,你会注意到性能上升。

答案 2 :(得分:3)

将扩展名更改为.php,然后在样式表中添加:

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

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

答案 3 :(得分:3)

也许你应该使用它:

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

CSS:

div.image img{
   width: 100%
}

在html中放置样式的问题是一切都搞砸了。你应该尝试尽可能地将html与css和js分开。

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

考虑检查您的html布局以优化此功能。

答案 4 :(得分:1)

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

答案 5 :(得分: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; }

  3. 试试这个