如何将数据库表中的参数放入CSS样式

时间:2015-09-12 12:59:22

标签: php html mysql css

我想在数据库tabele(MySQL)中定义CSS样式的参数,并将它们用于例如stylink菜单。我知道如果我们把变量放到这样的样式中是可能的:

<div id="content-inner" style="<?php echo $this->var['color'] ;?>">

但也许有人知道更好的方式吗?

3 个答案:

答案 0 :(得分:0)

而不是写

<?php echo $this->var['color'] ;?>

你可以写

<?= $this->var['color'] ?>

更简洁,更快速,更清晰,更易于阅读的代码

答案 1 :(得分:0)

在您的主页面中使用

<style type="text/css">
.custom_class_name{
<?php echo $this->var['color'] ;?>
}
</style>

然后在当前页面中使用此custom_class_name。

答案 2 :(得分:0)

你应该使用JavaScript来执行这样的任务,使用数据库只会在你的网络/数据库服务器上造成不必要的负担,从而占用你的记忆。

如果它是单个属性,您应该更新如下:

//单个CSS更改

<!DOCTYPE html>
<html>
<head>
<style>
.body{
    margin: 0 !important;
}
#target{
    height: 100px;
    width: 100px;
    background: red;    
}
</style>
<script>
function colorChange(){
    var target = document.getElementById("target"); 
    target.setAttribute("style", "background:blue;");
}
</script>
</head>
<body>
    <button onclick="colorChange();">Click Me</button>
    <div id="target"></div>
</body>
</html> 

如果它有多个属性更改,您应该使用id / class,如下所示:

//多个CSS更改

<!DOCTYPE html>
<html>
<head>
<style>
.body{
    margin: 0 !important;
}
#target1{
    height: 100px;
    width: 100px;
    background: red;    
}
#target2{
    height: 200px;
    width: 300px;
    background: blue;   
}
</style>
<script>
function colorChange(){
    var target = document.getElementById("target1");    
    target.setAttribute("id", "target2");
}
</script>
</head>
<body>
    <button onclick="colorChange();">Click Me</button>
    <div id="target1"></div>
</body>
</html>