为什么WordPress中的视觉编辑器通过包装内容来限制宽度?


8

为什么Wordpress中的可视编辑器通过包装内容来限制宽度?

我发现编辑器中的这种行为至少令人讨厌,但这确实阻止了我使用屏幕空间。


您能解释一下您希望编辑器执行的操作与实际执行的操作吗?在编辑框中包装文本是任何文本编辑器的默认行为...所以我不太确定您遇到了什么问题...
EAMann

Answers:


15

猜猜你的意思是什么,我想你的意思是这样的事情正在发生:

文字包装

如果您要指的是那,那是因为您的主题有一个editor-style.css样式表,该样式表正在视觉编辑器中使用。在样式表中的某处是这样的:

html .mceContentBody {
    max-width:640px;
}

删除该max-width值或修改该值将使您可以自定义该值。另一种选择是完全删除样式表。为此,请在您的主题中找到以下代码行(可能在中functions.php):

add_editor_style();

并删除它。

如果这根本不是您的问题,我深表歉意,希望您提出一些澄清。

编辑

由于WordPress在加载模板样式表之前先加载样式表,因此有两种方法可以覆盖样式。首先(也是最简单的):使您的风格重要:

html .mceContentBody {
  max-width: none !important;
}

要完全停止编辑器加载父样式,可以将其添加到主题的functions.php文件中:

function get_rid_of_editor_styles(){
  global $editor_styles;
  if(is_array($editor_styles))
    foreach($editor_styles as $e)
      $e = 'editor-style.css' == $e ? '' : $e;
}
add_action('init','get_rid_of_editor_styles');

function add_my_own_editor_styles(){
  add_editor_style( 'custom-editor-style.css' );
}
add_action('after_setup_theme','add_my_own_editor_styles');

然后在您的子主题中,将其custom-editor-style.css用作子主题的编辑器样式表editor-style.css

请注意,答案的最后部分并不是每个人的最佳解决方案。我之所以提供它,是因为我知道您正在使用以二十为模板的子主题。


谢谢,你猜对了。不过事情还没有完成:其中把控.. max-width: none;。我试图将其放在子主题中,但是当我处于管理状态时未加载该主题-不知道为什么(父母是二十岁)。我的想法是将其放置在不会被wordpress升级或父主题升级覆盖的地方。
索林2010年

好的,这是WordPress的工作方式:它添加了主题的样式表,然后添加了模板的编辑器样式(如果仍然被调用)。我将使用一些可能的解决方案编辑以上答案。
约翰·布洛赫

3
对此没有什么更新:WordPress 3.1将在父主题之后加载子主题的样式表。这将允许您的样式覆盖父样式,而无需完全删除父编辑器样式。更多信息,请访问:core.trac.wordpress.org/ticket/14430
John P Bloch 2010年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.