如果这是你自己的主题,我有一些建议。如果主题是第三方的,我建议制作一个儿童主题(谷歌上有很多关于这方面的有用建议)。
当您使用cookie来选择浅色或深色时,您应该能够钩住排队的样式,并使用style_loader_tag filter.
add_filter( \'style_loader_tag\', \'fix_style_choice\', 10, 4 );
function fix_style_choice( $html, $handle, $href, $media ){
// check cookies and only enqueue the right style (dequeue the wrong one).
}
我想这可以解决问题。
正如TomBroucke指出的,片段缓存也会有所帮助。
另一种方法是为两个样式表提供很短(或很长)的缓存时间。
最后,还有一个Javascript solution to the flash of unstyled content issue.