2017-03-03 67 views
1

目前,我正在研究PHP codeignitor框架。我有一些属性假设像颜色,字体等保存在我的数据库中的一个字段。我想要做的是,我在css文件中有一些具有默认值的类。像前一样。我有一个css类如下:使用php的动态CSS

 .text_box{ 
      color: pink; 
      text-decoration: none; 
      background-color: transparent !important; 
      transition: all 0.2s ease-in-out 0s; 
     } 
     .text_box:hover{ 
      color: blue; 
      text-decoration: none; 
      background-color: transparent !important; 
      transition: all 0.2s ease-in-out 0s; 
     } 

在我的数据库中,我已设置颜色属性为黄色的文本框。我想动态地改变它。意味着当我从输入字段中更改该颜色时,它应该自动转换为我想要的CSS属性中的颜色。

我不知道我的问题是否正确。我有很多链接,但没有得到我的方案的相关解决方案。

使用PHP如何创建这样的动态更改。

谢谢。

+0

你说你想用PHP来做分配颜色,但在加载页面之前,PHP只能分配。这是你想要的还是你想改变颜色而不重新加载页面? – Pacio

+0

添加你想要的PHP代码,(意思是在哪里添加这个) –

回答

2

你可以使用jQuery来做到这一点。

var color = "value from DB"; 
$('.text_box').css({ 'color' : color, }); 

或PHP:

<?php 
$color = 'value from DB'; //you have to get the value from db 
?> 
<style> 
.text_box { 
color: <?php echo $color; ?>; 
} 
</style> 

希望这个作品。

+0

嗨Vimal,谢谢你的回复。其实,我正在开发基于SaaS的应用程序项目。我在标题部分有4个菜单。所以我想制作不同的css文件。是否有其他方式可以放置我的css代码并按照我的php代码处理? – Punam

+1

@乔 - 我认为动态控制CSS的最佳方式是javascript。 – Vimal

+0

谢谢Vimal,这种方式对我很有用 – Punam

0

您可以检查Smarty

基本上,你从数据库中读取的值,然后将它们分配给模板,然后你会得到动态加载的类。

0

PHP或JavaScript不会直接改变你的CSS文件,但你想要做的是使用PHP或JavaScript动态地分配一个ID(#)到你的HTML元素,你有相关的CSS你想要的。

#pink.text_box{ 
     color: pink; //... 
} 
#blue.text_box{ 
     color: blue; //... 
} 

然后使用JavaScript或PHP代码的ID分配给该元素,你需要

0

尝试使用像

css_red.css css_blue.css css_green.css多个CSS文件用不同的默认颜色。

然后在PHP的echo样式表<link href="<?php echo "css_yourcolor";?>.css" >