当我更改它时,浏览器中的CSS没有更新

时间:2013-07-23 作者:David Tunnell

我正在开发wordpress网站的CSS。当我进行更改并刷新页面时,更改不会反映出来。当我清除浏览器历史记录并缓存时,更改仍会反映出来。当我查看页面的源代码并查看css文件时,它具有更改前的旧内容。我如何更新此内容以便开发?

11 个回复
最合适的回答,由SO网友:M-R 整理而成

在要附加的css文件末尾添加一个随机版本号。如果您正在使用\'wp_enqueue_style\' 或wp_register_style 函数,传递随机(版本)数rand(111,9999) 至第四个参数。如果要将css附加为html标记,则应添加“?ver=<?php echo rand(111,999)?>“在文件名的末尾。示例如下

wp_register_style( \'custom-style\', get_template_directory_uri() . \'/css/custom-style.css\', array(), rand(111,9999), \'all\' );

<link rel="stylesheet" type="text/css" href="http://website.com/css/custom-style.css?ver=<?php echo rand(111,999)?>">
它将避免在客户端缓存和服务器缓存上进行缓存。

SO网友:Shanan

我知道这篇文章已经有一年多的历史了,但我想我应该提到CloudFlare缓存css、js和图像等静态文件,以加快加载速度。这是我花了几个小时才弄明白的,因为我对css的更改没有反映在重新加载上。CloudFlare具有可启用3小时的开发模式。如果在开始修改之前忘记启用它,则可以从cloudflare management中清除缓存。

SO网友:Edy Pang

我也有这个问题,在这里尝试了投票最多的解决方案,但没有成功。你可以像我一样玩简单的把戏。

覆盖要更改为主题的css;自定义(>);在仪表板中自定义CSS。

最终将更新css。然后您可以再次删除它。

SO网友:Jeff Purcell

您的主机可能正在使用类似Varnish的东西来缓存站点的输出。我是在一个客户的网站上遇到这个问题的,该网站托管在一个降价共享托管帐户上。我找到的唯一补救办法就是耐心。

SO网友:Ramón Puig

如果您使用的是子主题,则可能需要将子主题样式表排队,以便立即看到更改。这解决了我的问题。

SO网友:HappyHands31

只想指出一点-请务必注意caching plugins 您已安装的。WP Fastest Cache, 例如,如果您不记得登录到WP仪表板并单击导航菜单中的“Clear Cache-->Delete Cache and Minified CSS/JS”,可能会产生此问题。

SO网友:Gimhana Jayasekara

这可能很旧了。但我需要支持那些可能需要帮助的人。我也有同样的问题,我检查了我的插件。有一个“w3 total cache”插件可以加速加载。这是服务器端缓存插件,所以我禁用了它。css更改再次实时可见。有很多加载助推器插件。因此,请检查插件列表并禁用它们,直到完成开发。

SO网友:Odonga Brian

根据您的需要进行修改,效果很好,每次重新加载页面时都会生成随机版本号,非常适合开发:

wp_enqueue_style(\'mypluginstyle\',  plugins_url(\'/assets/mystyle.css\', __FILE__), array(), rand(111,9999) );

SO网友:SF007

请在顶部更改版本style.css 文件(位置..wp-content\\themes\\theme_name\\style.css) 更新的。

/*
Theme Name: SF TEST
Version: 1.0.1
*/
如1.0到1.1或1.0.1。

此外,更改功能中的版本。该CSS文件的php文件

wp_enqueue_style(\'style\', get_template_directory_uri() . "/assets/css/style.css", array(), \'1.0\', \'all\');
此处将“1.0”更改为更新版本,如“1.1”

SO网友:Jillian Hoenig

我知道这个问题已经有了一个公认的答案,效果很好,但我想提到另一个更简单的解决方案。

排队时,使用PHP函数time() 获取当前时间并将其用作版本。您的排队将如下所示:

wp_enqueue_style( \'my-custom-style\', get_template_directory_uri() . \'/style.css\', array(), time() );
如果您正在用html加载样式表,您的代码将如下所示:

<link rel="stylesheet" type="text/css" href="<?php echo get_template_directory_uri ?>/style.css?ver=<?php echo time() ?>">

SO网友:user188407

您使用的是浏览器的隐私设置。只需关闭以下部分:

预加载页面以更快地浏览和搜索cookies以记住您的首选项,即使您没有访问这些页面

结束

相关推荐

Internet Explorer ignore my css

我正在创建我的个人博客,但Internet explorer是我。大约5个小时,我试图找出我做错了什么,那么我的问题是什么?嗯,我为我的网站创建了面包屑,只针对特定的自定义类型-评论。所有浏览器都可以,但internet explorer(我有IE 10)正在将我的侧边栏推远。例如,如果您打开此“我的评论”http://milanchymcak.com/reviews/fix-redirect-virus-review - 如果您在firefox或chrome中打开它,就可以了。但在Internet ex