动态更改背景颜色

时间:2014-03-04 12:03:14

标签: javascript php mysql css

我创建了网站主题。在这一点上,我对添加一个功能感到困惑。那就是我想根据用户侧选择的颜色值来改变主题背景颜色。例如我们的表格如下:

+------+------------------+---------+
| s_no |    attribute     |  color  |
+------+------------------+---------+
| 1    | background-color | #F6F4F0 |
+------+------------------+---------+

现在我想像这样设置CSS属性

body{
    background-color:"color value from table"
}

这可能吗?如果可能的话,请解释一下。谢谢你提前!。

5 个答案:

答案 0 :(得分:2)

你可以看看这个。

http://www.barelyfitz.com/projects/csscolor/

它清楚地解释了如何动态添加CSS样式。

你可以在PHP中做这样的事情

<?php
header("Content-type: text/css");
$white = '#fff';
$dkgray = '#333';
$dkgreen = '#008400';
?>
body {
 background:<?=$white?>;
 color:<?=$dkgray?>;
}
h1, h2, h3, h4 {
 color:<?=$dkgreen?>;
}
blockquote {
 color:<?=$dkgreen?>;
}

答案 1 :(得分:1)

您可以在PHP中使用Styles

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

每次$color获取RAND()时都会使用{{1}}功能。

答案 2 :(得分:0)

<?php
setcookie("bgcolor", "#f2f2f2", time()+3600);
?>

<?php
if (isset($_COOKIE["user"]))

echo "<style>body{background-color:" . $_COOKIE["bgcolor"] . "}</style>";

?>

答案 3 :(得分:0)

试试这个javascript函数....

<script type="text/javascript">
function changeBG(color)
{
var body=document.getElementsByTagName('body')[0];
body.style.background= color;
}
</script>

并在按钮点击或您想要的任何事件上触发此功能..

<input type="button" onclick="return changeBG(this.value);" value="<?php echo $color; ?>">

答案 4 :(得分:0)

您可以使用javascript(ajax请求)代替在CSS中编写PHP。我没有足够的信息来了解您想要做什么,但是当用户在select中选择一个值时,您可以使用AJAX检索数据。开发起来比较复杂,但是将PHP代码编写到CSS中......是不是很脏?也许我在这一点上错了。