有没有办法PHP可以控制CSS

1)数据库</ p>

2)php </ p>
\ n

3)css </ p>

4)html表单</ p>

用户在html表单中输入一些属性,例如background:red,并保存 在数据库中,然后php从db背景css中的颜色选项中获取...然后我如何将php变量放在css属性中... </ p>

也有些主机没有 允许在.htaccess中添加处理程序,还有其他选项吗?</ p>
</ div>

展开原文

原文

1) database

2) php

3) css

4) html form

The user enters some properties for example background: red in the html form and it saves in the db, then php loades from the db the color option in background css... and then how can I put php variable in the css properties...

also some hostings does not allow to add handlers in .htaccess, is there other options?

doulin2025
doulin2025 这里的关键部分是“用户输入属性”而不是硬连线的CSS类。
接近 8 年之前 回复
duanji7182
duanji7182 答案太复杂了。只需在CSS中创建不同的类。然后在html中从数据库中调用这些类。任务完成!
接近 8 年之前 回复
douyao3895
douyao3895 实际上,你可以采用几种不同的方式见下面的答案。
接近 8 年之前 回复
dongqin1167
dongqin1167 不,你不能那样做
接近 8 年之前 回复

5个回答

Yes, it is possible.

You can serve a css file with php by setting the content-type.

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

You would output the css from the php file.

You could store values in a mySQL or other table with a form, and later retrieve them with the mySQLi or other library.

This is an example of the php script:

<?
    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" ?>;
}

Alternatively, you could output inline css on the page. Either directly in to a tag, or inline on elements.

If really needed a native css file for some reason (I can't think of one), you could technically overwrite a specific css file using php's fwrite() function, though I wouldn't recommend doing it this way.

 <?php

      $filename = "phpstyle.css";

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

      $bgcolor = "#FFF";

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

      fwrite($fp, $css);

      fclose($fp);

 ?>
doukang5966907
doukang5966907 别担心。 我刚才详细说明了使用php包含用于将css文件写入磁盘的示例代码的答案。
接近 8 年之前 回复
douxie4583
douxie4583 好主意,谢谢))
接近 8 年之前 回复
duan198727
duan198727 这是正确答案+1。
接近 8 年之前 回复

Yes you can serve a css through php script.

One method is to output style elements through 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>

Another method is to generate css dynamically in a php file and linking it on an html page.

<?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>
douyin9987
douyin9987 对于PHP来说,这将是更多的工作... ...直接样式表更好的生病
接近 8 年之前 回复
dongsashe6006
dongsashe6006 最好的选择是通过php将<style>元素添加到文档中...
接近 8 年之前 回复
dongya9346
dongya9346 嗯....这是个好主意)
接近 8 年之前 回复
dougaodi8895
dougaodi8895 你在考虑错误的方法。 您不会将PHP放在CSS文档中,而是使用PHP生成CSS文档。
接近 8 年之前 回复
doushen2154
doushen2154 但遗憾的是并非所有托管都允许在css文件中处理php
接近 8 年之前 回复

In addition to Khaleel's answer, you can put CSS in the HTML document itself, in a

<style>
...
</style>

section. You can use PHP variables to fill this in.

Or you can use inline styles in the HTML

<span style="...">...</span>

Why not just:

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

The myCondition triggers the insertion of in body styling. The !important tag overwrites all other existing value of that property.

Simple to understand and easy to use. Works every time.

ether create a css file using php dynamically, such as:

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

or use php to write the css inline on your html file:

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

however, you cannot create a standard css file with php.

dongxing4805
dongxing4805 我不知道abt css但是对于js特别是ajax的东西,当我们需要将php变量放入js文件时出于安全原因,当我们想要隐藏js代码时这种技术很有用,但不确定abt css我认为它的一部分 设计而不是编程......
接近 8 年之前 回复
dongwu9972
dongwu9972 是的,键是链接标记中的“.php”和所述php文件中的内容标题。 我之前使用过这种技术,但已经有一段时间了。
接近 8 年之前 回复
doulue1949
doulue1949 我想你可以......可能是我错了,即<link .... href =“style.css.php”......>如果你有合适的标题就行了......
接近 8 年之前 回复
doulin2029
doulin2029 是的,你可以使用你的php文件编写css,就像你刚才说的那样。 但是,因为php是服务器端代码,而css是客户端。 据我所知,你不能创建一个“styles.css”并使用PHP来编写样式inline说.css文件。 一个“styles.css”。 无论如何都不是没有写新文件。 您描述的是第一个代码段的用例。
接近 8 年之前 回复
dougu7546
dougu7546 你可以<? header('content-type:text / css; charset = utf-8'); $ bgColor =“#FFF”; //从数据库中获取它,我是为这个例子手动设置的?> body {background-color:<?php echo“$ bgColor”?>; }
接近 8 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐