在css中运行php代码

在css中运行php代码,php,css,echo,Php,Css,Echo,我正在将一些php添加到css文件中,但php似乎没有运行,而我只是看到打印的整个php代码 .large { width: 175px; height: 175px; position: absolute; border-radius: 100%; box-shadow: 0 0 0 7px rgba(255, 255, 255, 0.85), 0 0 7px 7px rgba(0, 0, 0, 0.25), inset 0 0 20px 2px rgba(0, 0, 0, 0.25);

我正在将一些php添加到css文件中,但php似乎没有运行,而我只是看到打印的整个php代码

.large {
width: 175px; 
height: 175px;
position: absolute;
border-radius: 100%;
box-shadow: 0 0 0 7px rgba(255, 255, 255, 0.85), 
0 0 7px 7px rgba(0, 0, 0, 0.25), 
inset 0 0 20px 2px rgba(0, 0, 0, 0.25);
background: url('http://www.tahara.es/images/LargeImage/<?php echo $row2[imageLarge]; ?>.jpg') no-repeat;
}
.large{
宽度:175px;
高度:175px;
位置:绝对位置;
边界半径:100%;
长方体阴影:0 0 7px rgba(255,255,255,0.85),
0 0 7px 7px rgba(0,0,0,0.25),
插入0.20px 2px rgba(0,0,0,0.25);
背景:url('http://www.tahara.es/images/LargeImage/.jpg")不重复;;
}

我做错什么了吗?还是在CSS中运行PHP太疯狂了?

编辑:重写答案

可以在CSS文件中运行PHP,但有一个条件:

您的服务器通过PHP管道发送对*.CSS文件的请求

通常这不是一个好主意,因为这将使用PHP处理所有通常静态的CSS文件,这是一种性能损失


更好的选择是将*.css文件重命名为PHP,然后将PHP文件链接为css文件

编辑:重写答案

可以在CSS文件中运行PHP,但有一个条件:

您的服务器通过PHP管道发送对*.CSS文件的请求

通常这不是一个好主意,因为这将使用PHP处理所有通常静态的CSS文件,这是一种性能损失


更好的选择是将*.css文件重命名为PHP,然后将PHP文件链接为css文件

不,这并不疯狂,您只需要为css文件提供一个
.PHP
扩展名(而不是
.css
),这样您的web服务器就可以将其作为PHP脚本执行,并在顶部添加几行,以确保浏览器知道它是CSS,而不是HTML或原始文本。这些线路将是:

<?php

header('Content-Type: text/css');

?>

不,这并不疯狂,您只需要为css文件提供一个
.php
扩展名(而不是
.css
),这样您的web服务器就可以将其作为php脚本执行,并在顶部添加几行,以确保浏览器知道它是css而不是HTML或原始文本。这些线路将是:

<?php

header('Content-Type: text/css');

?>

默认情况下,大多数Apache安装只解释实际.PHP文件中的PHP代码。PHP处理器在不重新配置Apache(或您正在运行的任何Web服务器)的情况下不会处理其他文件类型,并且默认情况下,它们将作为该文件类型的默认值呈现给浏览器

但是,从PHP可以生成任何类型的内容。大多数刚接触PHP的人在考虑PHP将生成什么时会想到HTML,但这只是开始:

<?php header('Content-Type:text/css'); ?>
<? /* php code defining $row2 */ ?>
.large {
    width: 175px; 
    height: 175px;
    position: absolute;
    border-radius: 100%;
    box-shadow: 0 0 0 7px rgba(255, 255, 255, 0.85), 
    0 0 7px 7px rgba(0, 0, 0, 0.25), 
    inset 0 0 20px 2px rgba(0, 0, 0, 0.25);
    background: url('http://www.tahara.es/images/LargeImage/<?php echo $row2[imageLarge]; ?>.jpg') no-repeat;
 }

.大{
宽度:175px;
高度:175px;
位置:绝对位置;
边界半径:100%;
长方体阴影:0 0 7px rgba(255,255,255,0.85),
0 0 7px 7px rgba(0,0,0,0.25),
插入0.20px 2px rgba(0,0,0,0.25);
背景:url('http://www.tahara.es/images/LargeImage/.jpg")不重复;;
}
使用这种技术,您可以生成HTML、JavaScript、CSS、XML、JSON和其他类型的内容

现在,将此服务器生成的CSS注入到您的网页时,链接标记将如下所示:

<link rel="stylesheet" type="text/css" href="myDynamicCSS.php" />


请注意,扩展名是.php,而不是.css,作为最终产品发送到浏览器的内容是“text/css”。

默认情况下,大多数Apache安装将仅解释实际.php文件中的php代码。PHP处理器在不重新配置Apache(或您正在运行的任何Web服务器)的情况下不会处理其他文件类型,并且默认情况下,它们将作为该文件类型的默认值呈现给浏览器

但是,从PHP可以生成任何类型的内容。大多数刚接触PHP的人在考虑PHP将生成什么时会想到HTML,但这只是开始:

<?php header('Content-Type:text/css'); ?>
<? /* php code defining $row2 */ ?>
.large {
    width: 175px; 
    height: 175px;
    position: absolute;
    border-radius: 100%;
    box-shadow: 0 0 0 7px rgba(255, 255, 255, 0.85), 
    0 0 7px 7px rgba(0, 0, 0, 0.25), 
    inset 0 0 20px 2px rgba(0, 0, 0, 0.25);
    background: url('http://www.tahara.es/images/LargeImage/<?php echo $row2[imageLarge]; ?>.jpg') no-repeat;
 }

.大{
宽度:175px;
高度:175px;
位置:绝对位置;
边界半径:100%;
长方体阴影:0 0 7px rgba(255,255,255,0.85),
0 0 7px 7px rgba(0,0,0,0.25),
插入0.20px 2px rgba(0,0,0,0.25);
背景:url('http://www.tahara.es/images/LargeImage/.jpg")不重复;;
}
使用这种技术,您可以生成HTML、JavaScript、CSS、XML、JSON和其他类型的内容

现在,将此服务器生成的CSS注入到您的网页时,链接标记将如下所示:

<link rel="stylesheet" type="text/css" href="myDynamicCSS.php" />

请注意,扩展名是.php,而不是.css,作为最终产品发送到浏览器的内容是“text/css”。

是的,您当然可以让php解析css,从而动态生成它。实现这一点最简单的方法就是将浏览器指向一个PHP脚本——记住,它不关心扩展是什么。它只是希望响应是text/css

在HTML中:

<link type='text/css' rel='stylesheet' href='/styles/default.php' />
您还可以配置HTTP守护程序/服务,通过PHP解析器运行所有
.css
文件。但是,您必须通过解析器运行所有
.css
文件——在大多数情况下,这是不必要的性能损失

然而,在正常情况下,最好简单地定义样式表,使其具有足够的灵活性来容纳所有页面。理想情况下,样式表“永不”过期,客户端“永不”必须多次下载它们。如果您是动态生成样式,我怀疑您没有抓住要点。动态生成的规则通常应该嵌入到页面中

(当然,该规则也有例外…

是的,您当然可以让PHP解析CSS,从而动态生成它。实现这一点最简单的方法就是将浏览器指向一个PHP脚本——记住,它不关心扩展是什么。它只是希望响应是text/css

在HTML中:

<link type='text/css' rel='stylesheet' href='/styles/default.php' />
您还可以配置HTTP守护程序/服务,通过PHP解析器运行所有
.css
文件。但是,您必须通过解析器运行所有
.css
文件——在大多数情况下,这是不必要的性能损失

但是,在正常情况下,最好只定义样式表