删除后剩余的管理栏css 时间:2011-04-04 作者:Mild Fuzz 我正在使用以下代码删除管理栏(客户端请求)。add_filter( \'show_admin_bar\', \'__return_false\' ); 问题是,它会留下一些自动生成的CSS,在我的页面顶部放置一条巨大的白线(通过28px的上边距规则)。我怎样才能把它关掉呢? 4 个回复 最合适的回答,由SO网友:Chris_O 整理而成 要完全删除管理栏,请使用wp\\u degregister\\u脚本取消js和css的注册并删除操作。if (!is_admin() && !current_user_can(\'add_users\')){ wp_deregister_script( \'admin-bar\' ); wp_deregister_style( \'admin-bar\' ); remove_action(\'wp_footer\',\'wp_admin_bar_render\',1000); } SO网友:Jan Fabry 我认为您添加此筛选器太晚了init?), 所以初始化确实发生了,但其余的没有发生。检查的三个地方show_admin_bar (通过is_admin_bar_showing()) 是:_wp_admin_bar_init(), 已调用init. 这将创建the WP_Admin_Bar class, 哪一个hooks into wp_head 和adds the 28px margin at the top.get_body_class() 添加admin-bar 类到body标记(奇怪的是,这不是通过挂接到body_class?)wp_admin_bar_render() 执行实际渲染。如果禁用此选项,但不禁用第一个选项,则顶部会出现一个空白区域因为_wp_admin_bar_init() 已调用init, 如果同时添加show_admin_bar 过滤器打开init, 除非你改变优先级。这将不会呈现管理栏,但仍会添加28px的边距:add_filter( \'init\', \'wpse13875_init\' ); function wpse13875_init() { add_filter( \'show_admin_bar\', \'__return_false\' ); } 这将完全禁用管理栏,因为它将在_wp_admin_bar_init():add_filter( \'init\', \'wpse13875_init\', 9 ); function wpse13875_init() { add_filter( \'show_admin_bar\', \'__return_false\' ); } SO网友:bueltge 看见this answer, 是一个完整的解决方案,包括卸载脚本和样式。钩子移除了管理栏,但没有移除js和css的负载。 SO网友:anu 难道你不能重写CSS吗?这可能是最简单的方法,添加一个显示:无论管理栏选择器是什么,都没有 结束 文章导航