我即将开始一个新的LAMP项目。
一般来说,我制作的所有css类,特别是用于布局的,都是这样的:
.pageBoundaries{
width:999px;
margin:auto;
}
.onethird{
width:333px;
float:left;
display:block;
}
.twothird{
width:666px;
float:left;
display:block;
}
.half{
width:499px;
float:left;
display:block;
}现在,我在考虑做一个php文件来控制宽度(可能是颜色,边框等)。就像这样:
$pageWidth=999;
.pageBoundaries{
width:<?php $pageWidth ?>px;
margin:auto;
}
.onethird{
width:<?php $pageWidth/3 ?>px;
float:left;
display:block;
}
.twothird{
width:<?php ($pageWidth*2)/3 ?>px;
float:left;
display:block;
}
.half{
width:<?php $pageWidth/2 ?>px;
float:left;
display:block;
}然后我可以设置这个php文件的头文件,以便浏览器将其解释为css文件。对这个计划有什么想法吗?它的利弊是什么?
通过这样做,我认为制作多色主题也是相当容易的。
发布于 2010-12-30 17:24:40
发布于 2010-12-30 18:10:31
思考
这是一个有趣的想法,但可能不是最好的方法。通过PHP实现的动态CSS确实有一些很酷的优点,但我不会将其用于页面宽度。
特定的Con:
·加载速度较慢。您可以设置缓存头,使其只加载CSS一次,但仍然不是最好的方法。您必须不断地清空/无效缓存、重命名文件或添加参数。
·此外,PHP只会在页面加载时设置页面宽度值。如果页面调整大小会发生什么?(这就是为什么人们通常使用javascript而不是PHP来实现您所描述的目的)
通过PHP:很好地使用动态CSS
·如果要为某些用户或基于PHP中设置的某些变量设置特定的CSS属性。(例如为用户存储在数据库中的颜色首选项)
何时不通过PHP使用CSS:
·当需要在页面加载后更改CSS时。(例如调整浏览器窗口大小时调整/移动元素的大小--不使用百分比)
替代方案
javascript-based方法可能更好。像这样的框架为manipulating CSS和accessing the width of elements such as the document or window提供了一些很好的工具。
其他CSS工具:
发布于 2010-12-30 17:27:34
你必须把你的css和php代码嵌入到同一个文件中。还有一件事,记住,php首先被呈现为它的服务器脚本,然后是客户端脚本,如html、js或css。
https://stackoverflow.com/questions/4561407
复制相似问题