PHP中的自定义用户CSS?

use*_*ser 3 css php

我想在我的网站上添加一个功能,允许用户在多种样式之间进行选择.我在其他网站上看到过此功能.我将如何进行此操作,或者有人可以向我推荐有关如何完成此操作的教程或指南?

kar*_*m79 5

首先,您可以简单地使样式表链接动态化:

<link rel="stylesheet" href="<?=$style?>" type="text/css"/>
Run Code Online (Sandbox Code Playgroud)

并提供更改它们的链接:

<a href="/page.php?theme=racecar">Racecar</a>
Run Code Online (Sandbox Code Playgroud)

在服务器上,$style根据查询字符串进行分配,在用户决定修改URL时默认为某些内容也是一个好主意:

<?php
    $stylesArr = array('racecar', 'magenta', 'cartman');
    if(isset($_GET['theme']) && in_array($_GET['theme'], $stylesArr)) {
        $style = $_GET['theme'] . '.css';
        setcookie("theme", $style, time()+(3600*24*30));//expires in one month
    } else {
        if(isset($_COOKIE['theme']) && in_array($_COOKIE['theme'], $stylesArr)) {
            $style = $_COOKIE['theme'] . '.css';
        } else {
            $style = 'default.css';
        }
    }
?>
<link rel="stylesheet" href="<?=$style?>" type="text/css"/>
Run Code Online (Sandbox Code Playgroud)

您可以通过查询字符串,cookie会话传播用户的样式.