我正在开发一款应用程序,允许用户在应用程序中选择样式选项。然后,这些选项将用于生成动态网页。我想知道我的选择是什么来实现这个页面的样式,以及这些选项的优缺点是什么?
我看到它的方式,我有以下三个选项:
应用css inline
创建动态php样式表......例如:<link rel="stylesheet" type="text/css" href="http://domain.com/style.php/>
我也听说过缓存样式表,但我甚至不确定如何做到这一点。如果这是最好的选择,那么最好的选择是什么呢?
这些选项都可用吗?那对我想要达到的目标最好?
感谢任何输入
保
答案 0 :(得分:5)
当然,你的第二个选择是最好的。
使用style.php,您可以根据登录的用户随时输出。
考虑我使用style.php甚至不需要为用户自定义它。 有了它,您可以扩展CSS功能,如:
<?php $blue = 'color:#yourbluecolorFFF'; ?> // EXAMPLE
td { <?php echo $blue; ?>}
/*etc*/
另外不要忘记:
header('Content-Type: text/css');
答案 1 :(得分:1)
TLDR摘要
我会说逐步加载样式表,让用户选择他们想要的样式。
也就是说,将样式表加载到“图层”中。例如,您可以使用静态“style.css”来记下所有样式中常见的基础知识。然后,您可以烹饪3张纸,每张纸稍微改变/覆盖样式:
从那里你有两个选择。你可以
#content-article
变为#content-article-red
或#content-article-blue
)。不推荐。答案 2 :(得分:0)
这实际上取决于样式选项的精细程度。如果它是一些简单的东西,可能会使用内联CSS是最好的选择。如果有足够的自定义,那么我建议你在“保存”时间生成他们的自定义CSS并将其存储在文件系统上。我个人不喜欢styles.php,因为它是服务器上的一个额外负载,比较发送静态文件的Web服务器与必须通过php处理该请求然后提供内容。
除非您真的很少访问者和/或CSS经常更改(我无法思考为什么),否则最好使用内联css或为每个用户生成动态css文件。
根据您在评论中的回答。我认为保存后生成CSS文件最好,并覆盖包含在包中的默认CSS文件。
我看到的最简单的解决方案。您可以拥有一个模板CSS文件,您可以在其中包含标签。将模板加载到PHP变量中。用您从设置表单中收到的输入替换标签。保存/覆盖CSS,你就完成了。