-2

1) 数据库

2) php

3)CSS

4)html表单

用户在 html 表单中输入一些属性,例如 background: red 并将其保存在 db 中,然后 php 从 db 加载背景 css 中的颜色选项...然后我如何将 php 变量放入 css 属性中。 .

还有一些主机不允许在 .htaccess 中添加处理程序,还有其他选择吗?

4

5 回答 5

4

是的,有可能。

您可以通过设置内容类型来使用 php 提供 css 文件。

<?php header('content-type: text/css; charset=utf-8'); ?>

您将从 php 文件中输出 css。

您可以使用表单将值存储在 mySQL 或其他表中,然后使用 mySQLi 或其他库检索它们。

这是 php 脚本的示例:

<?
    header('content-type: text/css; charset=utf-8');

    $bgColor = "#FFF"; // Get it from database, I'm setting manually for this example
?>

body{
      background-color:<?php echo "$bgColor" ?>;
}

或者,您可以在页面上输出内联 css。直接进入标签,或内联元素。

如果出于某种原因确实需要一个本机 css 文件(我想不出一个),您可以在技术上使用 php 的 fwrite() 函数覆盖特定的 css 文件,但我不建议这样做。

 <?php

      $filename = "phpstyle.css";

      $fp = fopen($filename, 'w');

      $bgcolor = "#FFF";

      $css  = "body{";
      $css .= "background-color:".$bgcolor.";"; 
      $css .= "}";           

      fwrite($fp, $css);

      fclose($fp);

 ?>
于 2012-10-23T04:33:39.210 回答
1

是的,您可以通过 php 脚本提供 css。

一种方法是通过php输出样式元素。

<?php
    #css on php file
    $color = '#FFFFFF';
?>
<html>
<head>
    <title>Css through php</title>
    <style>
        .test{
            text-color: <?php echo $color;  ?> 
        }
    </style>
</head>
<body>
<p class="test">Your body </p>
</body>
</html>

另一种方法是在 php 文件中动态生成 css 并将其链接到 html 页面上。

<?php
    #css on php file [test_css.php]
    header("Content-type: text/css");
    $color = '#FFFFFF';
?>
.test{
            text-color: <?php echo $color;  ?> 
}

<html>
<!-- test.html -->
<head>
    <title>Css through php</title>
    <link rel="stylesheet" type="text/css" href="test_css.php">
</head>
<body>
<p class="test">Your body </p>
</body>
</html>
于 2012-10-23T04:28:15.053 回答
0

除了 Khaleel 的回答之外,您还可以将 CSS 放在 HTML 文档本身中,

<style>
...
</style>

部分。您可以使用 PHP 变量来填写它。

或者您可以在 HTML 中使用内联样式

<span style="...">...</span>
于 2012-10-23T04:35:02.410 回答
0

为什么不只是:

<?php if (myCondition) { ?>
<style>.myClass {
background: <?php echo $myColor; ?> !important;
} </style>
<?php } ?>

myCondition 触发插入正文样式。!important 标记会覆盖该属性的所有其他现有值。

简单易懂且易于使用。每次都有效。

于 2013-09-06T19:11:14.917 回答
-1

ether 使用 php 动态创建一个 css 文件,例如:

<link href="../styles/styles.php" type="text/css" />

或使用 php 在您的 html 文件中写入 css 内联:

<html>
<head>
<style type="text/css">
body {
   background-color: <?php echo $redcolor; ?>;
}
</style>
</head>
<body></body>
</html>

但是,您不能使用 php.ini 创建标准的 css 文件。

于 2012-10-23T04:32:43.807 回答