phpMyAdmin 自定义 CSS 不生效的主因是浏览器缓存或 CSS 未正确加载;需禁用缓存、验证 CustomCSS 路径与文件权限、检查选择器优先级及语法,并确认 PHP 能读取新文件。
改了 custom-pma.css 或 common.css,但 phpmyadmin 界面没变 —— 90% 是浏览器缓存或 css 加载失败,不是代码写错了。
浏览器强制缓存 CSS 资源
phpMyAdmin 的 CSS 文件(包括 phpmyadmin.css.php 和你自定义的 custom-pma.css)默认带版本参数(如 ?v=5.2.1),浏览器会死死记住这个哈希值。哪怕你改了文件内容,只要 URL 没变,它就直接用缓存。
- 打开 Chrome 开发者工具(F12),切到 Network 标签页,勾选 Disable cache (while DevTools is open)
- 刷新页面,看
css/下的请求是否返回 200,且响应体是你刚写的样式 - 如果仍不生效,手动在 URL 后加
&v=1(例如/phpmyadmin/index.php?v=1),再刷新 - 别只 Ctrl+R —— 用
Ctrl+F5或清空浏览器缓存(Settings → Privacy → Clear browsing data → Cached images and files)
自定义 CSS 文件根本没加载
$cfg['CustomCSS'] 配置的是 Web 可访问路径,不是服务器绝对路径。填错就等于告诉 phpMyAdmin:“去一个不存在的地方找 CSS”。
- 检查
config.inc.php中这行是否在末尾、无拼写错误:$cfg['CustomCSS'] = '/css/custom-pma.css'; - 确认该文件真实存在于 phpMyAdmin 根目录下的
css/子目录(例如/var/www/html/phpmyadmin/css/custom-pma.css) - 用浏览器直接访问
https://your-domain.com/phpmyadmin/css/custom-pma.css—— 应该能看见你写的 CSS 内容,而不是 404 或下载提示 - 如果返回 403/404,说明 Web 服务器(Nginx/Apache)没放行该路径,或文件权限不对(
ls -l css/custom-pma.css应为 644,属主为www-data或nginx)
CSS 规则被覆盖或未命中
就算文件加载成功,样式也可能不生效:选择器太弱、优先级不够、或压根没匹配到目标元素。
- 用 F12 检查你要调的区域(比如 SQL 输入框),右键 → Inspect,看 computed 样式里
font-size最终来自哪个 CSS 文件和规则 - 确保用了
!important(phpMyAdmin 原生 CSS 优先级很高,不加容易被盖掉) - 别写
body { font-size: 14px; }这种泛泛而谈的规则 —— 它对.sqlquery textarea无效;要写具体选择器:.sqlquery textarea { font-size: 13px !important; } - 检查是否有中文标点混入(比如全角
:或;),会导致整条规则失效
最常被忽略的一点:改完 custom-pma.css 后,没验证它是否真的被 phpmyadmin.css.php 动态合并进最终输出。有些部署方式(如 Docker + volume 挂载)会导致 PHP 进程读不到新文件,得重启容器或清空 OPcache(opcache_reset())。
立即学习“PHP免费学习笔记(深入)”;



















