에디터 스타일과 기본 스타일의 합병

* 기본 에디터 스타일과 기본 스타일 설정이 충돌하는 경우가 많았습니다.
 - 기본 스타일을 지정했는데, 기본 에디터 스타일 내의 스타일 지정이 있는 경우 반영이 안되는 경우, 또는 기본 에디터 스타일을 변경했는데 기본 스타일 설정 때문에 반영이 적절하게 되지 않는 경우 등.
* 기본 에디터 스타일에서도 less 또는 sass를 사용하도록 하고 싶었지만, 위지윅 에디터에서 본문에 나타날 스타일을 그대로 보여주는데 한계가 있었습니다.
 - 기본 에디터 스타일을 위지윅 에디터 내에서 나타내기 위해서 변칙적인 방법이 많이 활용되었습니다. 때문에 실제 본문에서 적용되는 스타일 시트의 우선순위와 위지윅 에디터 내에서 적용되는 스타일 시트의 우선순위에 차이가 있었습니다. 이 차이는 실제 보여지는 스타일과 작성하는 에디터 내의 스타일 차이를 크게 만들 가능성이 있었습니다.
* 기능의 의미가 많이 퇴색되었고, 의미 전달이 명확하지 않은 기능이었습니다.
 - 기능상 기본 에디터 스타일과 기본 스타일은 서로 겹치는 영역의 기능입니다. 기본으로 포함된 두 에디터 스타일 간에 차이가 크지 않기도 해서 어떤 기능인지 사용자가 알아채기도 어려웠습니다. 자료실에 배포되고 있는 에디터 스타일도 대단히 적었습니다.
* 게시판이나 각 글의 모듈 스킨에서 지정하는 스타일과 충돌할 가능성도 있습니다.

따라서, 에디터 스타일이 의도한 것 처럼 글의 스타일에 대한 관리자 통제 기능은 유지하면서, 다른 기능과 중복되거나 충돌할 수 있는 기능을 정리합니다.
가능한 많은 환경에서 테스트 하였으나, 추가로 이와 관련한 의견이 있을 경우 merge 후에도 계속 반영 해나가겠습니다.
This commit is contained in:
Min-Soo Kim 2020-06-16 00:33:19 +09:00 committed by GitHub
parent 9b95ae0134
commit e7cb5ede82
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
31 changed files with 212 additions and 339 deletions

View file

@ -42,6 +42,51 @@ a img {
max-width: 100%;
height: auto;
}
blockquote {
padding: 2px 0;
border-style: solid;
border-color: #ccc;
border-width: 0;
border-left-width: 5px;
padding-left: 20px;
padding-right: 8px;
&:lang(ar), &:lang(arc), &:lang(dv), &:lang(ha), &:lang(he), &:lang(khw), &:lang(ks), &:lang(ku), &:lang(ps), &:lang(fa), &:lang(ur), &:lang(yi) {
border-left-width: 0px;
border-right-width: 5px;
padding-left: 8px;
padding-right: 20px;
}
}
/* lists */
ul {
list-style-type: disc;
}
ol {
list-style-type: decimal;
}
ul, ol {
display: block;
margin-left: 1em;
margin-right: 0;
padding-left: 25px;
padding-right: 0;
&:lang(ar), &:lang(arc), &:lang(dv), &:lang(ha), &:lang(he), &:lang(khw), &:lang(ks), &:lang(ku), &:lang(ps), &:lang(fa), &:lang(ur), &:lang(yi) {
padding-left: 0px;
padding-right: 25px;
margin-left: 0;
margin-right: 1em;
}
}
li {
display: list-item;
}
}
@media screen {
img, video {
@ -317,7 +362,7 @@ a img {
}
}
/* Button (for XE compatibility */
/* Button (for XE compatibility) */
.btnArea_mixin(@enabled) when (@enabled = true) {
clear: both;
margin: 10px 0;

View file

@ -160,8 +160,6 @@ class editorAdminController extends editor
$config->comment_editor_toolbar_hide = $configVars->comment_editor_toolbar_hide === 'Y' ? 'Y' : 'N';
$config->mobile_comment_editor_toolbar = $configVars->mobile_comment_editor_toolbar;
$config->mobile_comment_editor_toolbar_hide = $configVars->mobile_comment_editor_toolbar_hide === 'Y' ? 'Y' : 'N';
$config->content_style = $configVars->content_style;
$config->comment_content_style = $configVars->comment_content_style;
$config->sel_editor_colorset = $configVars->sel_editor_colorset;
$config->sel_comment_editor_colorset = $configVars->sel_comment_editor_colorset;

View file

@ -50,16 +50,6 @@ class editorAdminView extends editor
$skin_info = $oModuleModel->loadSkinInfo($this->module_path,$editor_config->editor_skin);
$comment_skin_info = $oModuleModel->loadSkinInfo($this->module_path,$editor_config->comment_editor_skin);
$contents = FileHandler::readDir(_XE_PATH_.'modules/editor/styles');
$content_style_list = array();
for($i=0,$c=count($contents);$i<$c;$i++)
{
$style = $contents[$i];
$info = $oModuleModel->loadSkinInfo($this->module_path,$style,'styles');
$content_style_list[$style] = new stdClass();
$content_style_list[$style]->title = $info->title;
}
// Get install info, update info, count
$oAutoinstallModel = getModel('autoinstall');
foreach($component_list as $component_name => $xml_info)
@ -82,7 +72,6 @@ class editorAdminView extends editor
Context::set('editor_skin_list', $editor_skin_list);
Context::set('editor_colorset_list', $skin_info->colorset);
Context::set('comment_editor_colorset_list', $comment_skin_info->colorset);
Context::set('content_style_list', $content_style_list);
Context::set('component_list', $component_list);
Context::set('component_count', $component_count);

View file

@ -30,7 +30,6 @@ class editor extends ModuleObject
'mobile_editor_toolbar' => 'simple',
'mobile_editor_toolbar_hide' => 'Y',
'sel_editor_colorset' => 'moono-lisa',
'content_style' => 'ckeditor_light',
'comment_editor_skin' => 'ckeditor',
'comment_editor_height' => 100,
'comment_editor_toolbar' => 'simple',
@ -39,7 +38,6 @@ class editor extends ModuleObject
'mobile_comment_editor_toolbar' => 'simple',
'mobile_comment_editor_toolbar_hide' => 'Y',
'sel_comment_editor_colorset' => 'moono-lisa',
'comment_content_style' => 'ckeditor_light',
'content_font' => '',
'content_font_size' => '13px',
'content_line_height' => '160%',

View file

@ -115,8 +115,6 @@ class editorController extends editor
if($editor_config->default_editor_settings !== 'Y') $editor_config->default_editor_settings = 'N';
$editor_config->editor_skin = Context::get('editor_skin');
$editor_config->comment_editor_skin = Context::get('comment_editor_skin');
$editor_config->content_style = Context::get('content_style');
$editor_config->comment_content_style = Context::get('comment_content_style');
$editor_config->content_font = Context::get('content_font');
if($editor_config->content_font)
{
@ -171,13 +169,12 @@ class editorController extends editor
$this->setRedirectUrl($returnUrl);
}
/**
* @brief convert editor component codes to be returned and specify content style.
*/
function triggerEditorComponentCompile(&$content)
{
if(Context::getResponseMethod() !== 'HTML') return;
/**
* @brief Load editor style
*/
function procLoadEditorStyle()
{
$module_info = Context::get('module_info');
$module_srl = $module_info->module_srl;
if($module_srl)
@ -188,7 +185,7 @@ class editorController extends editor
{
$editor_config = getModel('module')->getModuleConfig('editor');
}
if ($editor_config)
{
$default_font_config = $this->default_font_config;
@ -198,58 +195,22 @@ class editorController extends editor
if ($editor_config->content_paragraph_spacing) $default_font_config['default_paragraph_spacing'] = $editor_config->content_paragraph_spacing;
if ($editor_config->content_word_break) $default_font_config['default_word_break'] = $editor_config->content_word_break;
Context::set('default_font_config', $default_font_config);
$content_style = $editor_config->content_style;
if($content_style)
{
$path = _XE_PATH_ . 'modules/editor/styles/'.$content_style.'/';
if(is_dir($path) && file_exists($path . 'style.ini'))
{
$ini = file($path.'style.ini');
foreach($ini as $file)
{
$file = trim($file);
if(!$file) continue;
$args = array('./modules/editor/styles/'.$content_style.'/'.$file);
Context::loadFile($args);
}
}
}
/*
$buff = array();
$buff[] = '<style> .xe_content {';
if ($content_font)
{
$buff[] = "font-family: $content_font;";
}
if ($content_font_size)
{
$buff[] = "font-size: $content_font_size;";
}
if ($content_line_height)
{
$buff[] = "line-height: $content_line_height;";
}
if ($content_word_break === 'none')
{
$buff[] = 'white-space: nowrap;';
}
else
{
$buff[] = 'word-break: ' . ($content_word_break ?: 'normal') . '; word-wrap: break-word;';
}
$buff[] = '}';
$buff[] = '.xe_content p { margin: 0 0 ' . ($content_paragraph_spacing ?: 0) . ' 0; }';
$buff[] = '</style>';
Context::addHtmlHeader(implode(' ', $buff));
*/
}
else
{
Context::set('default_font_config', $this->default_font_config);
}
}
/**
* @brief convert editor component codes to be returned and specify content style.
*/
function triggerEditorComponentCompile(&$content)
{
if(Context::getResponseMethod() !== 'HTML') return;
$this->procLoadEditorStyle();
$content = $this->transComponent($content);
}

View file

@ -113,7 +113,7 @@ class editorModel extends editor
Context::set('upload_target_srl', $upload_target_srl);
Context::set('editor_sequence', $option->editor_sequence);
// Check that the skin and content style exist.
// Check that the skin exist.
if (!$option->editor_skin)
{
$option->editor_skin = $option->skin;
@ -122,10 +122,6 @@ class editorModel extends editor
{
$option->editor_skin = $this->default_editor_config['editor_skin'];
}
if (!$option->content_style || !file_exists($this->module_path . 'styles/' . $option->content_style))
{
$option->content_style = $this->default_editor_config['content_style'];
}
if (!$option->sel_editor_colorset)
{
$option->sel_editor_colorset = $option->colorset ?: $this->default_editor_config['sel_editor_colorset'];
@ -140,8 +136,6 @@ class editorModel extends editor
}
Context::set('skin', $option->editor_skin);
Context::set('editor_path', $this->module_path . 'skins/' . $option->editor_skin . '/');
Context::set('content_style', $option->content_style);
Context::set('content_style_path', $this->module_path . 'styles/' . $option->content_style);
Context::set('colorset', $option->sel_editor_colorset);
Context::set('editor_height', $option->editor_height);
Context::set('editor_toolbar', $option->editor_toolbar);
@ -250,6 +244,7 @@ class editorModel extends editor
// Compile and return the editor skin template.
$tpl_path = Context::get('editor_path');
Context::loadLang($tpl_path.'lang');
$oTemplate = TemplateHandler::getInstance();
return $oTemplate->compile($tpl_path, 'editor.html');
}
@ -295,7 +290,6 @@ class editorModel extends editor
$option->$key = $val;
}
$option->editor_skin = $option->comment_editor_skin;
$option->content_style = $option->comment_content_style;
$option->sel_editor_colorset = $option->sel_comment_editor_colorset;
$option->upload_file_grant = $option->comment_upload_file_grant;
$option->enable_default_component_grant = $option->enable_comment_default_component_grant;

View file

@ -29,7 +29,6 @@ class editorView extends editor
$oEditorModel = getModel('editor');
$option = $oEditorModel->getEditorConfig();
$option->editor_skin = 'ckeditor';
$option->content_style = 'ckeditor_light';
$option->sel_editor_colorset = 'moono-lisa';
$option->primary_key_name = 'primary_key';
$option->content_key_name = 'content';
@ -141,16 +140,6 @@ class editorView extends editor
$skin_info = $oModuleModel->loadSkinInfo($this->module_path,$editor_config->comment_editor_skin);
Context::set('editor_comment_colorset_list', $skin_info->colorset);
$contents = FileHandler::readDir(_XE_PATH_.'modules/editor/styles');
$content_style_list = array();
for($i=0,$c=count($contents);$i<$c;$i++)
{
$style = $contents[$i];
$info = $oModuleModel->loadSkinInfo($this->module_path,$style,'styles');
$content_style_list[$style] = new stdClass();
$content_style_list[$style]->title = $info->title;
}
Context::set('content_style_list', $content_style_list);
// Get a group list
$oMemberModel = getModel('member');
$site_module_info = Context::get('site_module_info');
@ -161,7 +150,6 @@ class editorView extends editor
$security = new Security();
$security->encodeHTML('group_list..title');
$security->encodeHTML('group_list..description');
$security->encodeHTML('content_style_list..');
$security->encodeHTML('editor_comment_colorset_list..title');
// Set a template file

View file

@ -51,7 +51,6 @@ $lang->component_history = 'Updates';
$lang->component_description = 'Description';
$lang->component_extra_vars = 'Option Variable';
$lang->component_grant = 'Permission Setting';
$lang->content_style = 'Content Style';
$lang->content_font = 'Content Font';
$lang->content_font_size = 'Content Font Size';
$lang->about_component = 'About component';

View file

@ -28,7 +28,6 @@ $lang->component_history = '更新履歴';
$lang->component_description = '説明';
$lang->component_extra_vars = '設定変数';
$lang->component_grant = '権限設定';
$lang->content_style = 'コンテンツスタイル';
$lang->content_font = 'コンテンツフォント';
$lang->content_font_size = 'コンテンツフォントサイズ';
$lang->about_component = 'コンポーネント情報';

View file

@ -55,7 +55,6 @@ $lang->component_history = '변경 이력';
$lang->component_description = '설명';
$lang->component_extra_vars = '설정 변수';
$lang->component_grant = '권한설정';
$lang->content_style = '문서 서식';
$lang->content_font = '문서 폰트';
$lang->content_font_size = '문서 폰트 크기';
$lang->about_component = '컴포넌트 소개';

View file

@ -8,7 +8,6 @@ $lang->component_history = 'Güncelleştirmeler';
$lang->component_description = 'Açıklama';
$lang->component_extra_vars = 'Değişken Seçenek';
$lang->component_grant = 'Yetki Ayarı';
$lang->content_style = 'İçerik Tarzı';
$lang->content_font = 'İçerik Yazı Tipi';
$lang->content_font_size = 'İçerik Yazı Boyutu';
$lang->about_component = 'Bileşen hakkında';

View file

@ -9,7 +9,6 @@ $lang->component_history = 'Cập nhật';
$lang->component_description = 'Mô tả';
$lang->component_extra_vars = 'Thông tin bổ xung';
$lang->component_grant = 'Thiết lập quyền';
$lang->content_style = 'Kiểu dáng của nội dung';
$lang->content_font = 'Font chữ của nội dung';
$lang->content_font_size = 'Cỡ chữ của nội dung';
$lang->about_component = 'Thông tin Thành phần';

View file

@ -10,7 +10,6 @@ $lang->component_history = '更新日志';
$lang->component_description = '说明';
$lang->component_extra_vars = '变数设置';
$lang->component_grant = '权限设置';
$lang->content_style = '文档样式';
$lang->content_font = '文档字体';
$lang->content_font_size = '字体大小';
$lang->about_component = '组件简介';

View file

@ -10,7 +10,6 @@ $lang->component_history = '更新紀錄';
$lang->component_description = '說明';
$lang->component_extra_vars = '變數設置';
$lang->component_grant = '權限設置';
$lang->content_style = '內容樣式';
$lang->content_font = '內容字體';
$lang->content_font_size = '字體大小';
$lang->about_component = '組件簡介';

View file

@ -1,3 +1,7 @@
body.cke_editable { padding: 5px; background-color: #fff; }
html.cke_panel_container, html.cke_panel_container body {
background-color: #fff
}
p.editor_autosaved_message.autosave_message {display:none;background: #f6ffdb;padding:6px 10px;margin:0;line-height:1;}
span.cke_combo__fontsize .cke_combo_button { width: 64px; }
span.cke_combo__fontsize .cke_combo_text { width: 30px; }
span.cke_combo__fontsize .cke_combo_button { width: 64px;}
span.cke_combo__fontsize .cke_combo_text { width: 30px; }

View file

@ -0,0 +1,122 @@
@charset "UTF-8";
/* Content Default Styles */
.word_break(@wb) when (@wb = normal), (@wb = keep-all), (@wb = break-all) {
word-break: @wb;
word-wrap: break-word;
}
.word_break(@wb) when (@wb = none) {
white-space: nowrap;
}
.cont_font(@ft) when (@ft = none) {
}
.cont_font(@ft) when not (@ft = none) {
font-family: @content_font;
}
.cont_fontsize(@fs) when (@fs = none) {
}
.cont_fontsize(@fs) when not (@fs = none) {
font-size: @content_font_size;
}
.cont_lineheight(@lh) when (@lh = none) {
}
.cont_lineheight(@lh) when not (@lh = none) {
line-height: @content_line_height;
}
.cont_linespacing(@ls) when (@ls = none) {
}
.cont_linespacing(@ls) when not (@ls = none) {
margin: 0 0 @content_paragraph_spacing 0;
}
.light_dark(@cs) when (@cs = moono-dark) {
background-color: #494949;
color: #fff;
}
.light_dark(@cs) when not (@cs = moono-dark) {
background-color: #fff;
color: #000;
}
.light_dark_top(@cs) when (@cs = moono-dark) {
border-bottom-color: #1b1b1b;
}
.light_dark_top(@cs) when not (@cs = moono-dark) {
}
html {
&.cke_panel_container, &.cke_panel_container body {
background-color: #fff;
}
body.cke_editable {
padding: 10px;
.light_dark(@colorset);
}
}
p.editor_autosaved_message.autosave_message {
display:none;
background: #e0e0e0;
padding: 10px;
margin:0;
line-height:1.2;
}
.cke_reset {
span {
&.cke_top {
.light_dark_top(@colorset);
a {
&:hover, &:focus {
transition: none;
}
}
}
&.cke_combo__fontsize {
.cke_combo_button {
width: 64px;
}
.cke_combo_text {
width: 30px;
}
}
}
}
.xe_content.editable, .rhymix_content.editable {
.cont_font(@content_font);
.cont_fontsize(@content_font_size);
.cont_lineheight(@content_line_height);
.word_break(@content_word_break);
p {
.cont_linespacing(@content_paragraph_spacing);
.cont_lineheight(@content_line_height);
span {
.cont_lineheight(@content_line_height);
}
}
img, video {
max-width: 100%;
height: auto;
}
blockquote {
padding: 2px 0;
border-style: solid;
border-color: #ccc;
border-width: 0;
border-left-width: 5px;
padding-left: 20px;
padding-right: 8px;
&:lang(ar), &:lang(arc), &:lang(dv), &:lang(ha), &:lang(he), &:lang(khw), &:lang(ks), &:lang(ku), &:lang(ps), &:lang(fa), &:lang(ur), &:lang(yi) {
border-left-width: 0px;
border-right-width: 5px;
padding-left: 8px;
padding-right: 20px;
}
}
}

View file

@ -1,5 +1,14 @@
<!-- css -->
<load target="css/default.css" />
{@ $css_var = new stdClass; }
{@ $css_var->colorset = $colorset; }
{@ $css_var->content_font = $content_font ? $content_font : 'none'; }
{@ $css_var->content_font_size = $content_font_size ? $content_font_size : 'none';}
{@ $css_var->content_line_height = $content_line_height ? $content_line_height: 'none';}
{@ $css_var->content_word_break = $content_word_break ? $content_word_break : 'none';}
{@ $css_var->content_paragraph_spacing = $content_paragraph_spacing ? $content_paragraph_spacing : 'none';}
{@ Context::set('css_var',$css_var);}
<load target="css/default.less" vars="$css_var" />
<load target="../../../../common/xeicon/xeicon.min.css" />
<!-- JS -->
@ -12,22 +21,12 @@
var auto_saved_msg = "{$lang->msg_auto_saved}";
</script>
{@ $css_file_list = array(Context::getRequestUri() . $content_style_path . '/editor.css?' . date("YmdHis", @filemtime($content_style_path."/editor.css")))}
{@ $css_file_list = array()}
<!--@foreach($editor_additional_css as $additional_css_url)-->
{@ $css_file_list[] = $additional_css_url}
<!--@endforeach-->
{@ $css_content = null }
<!--@if($content_font || $content_font_size)-->
{@ $css_content .= ' .xe_content.editable { '}
<block cond="$content_font">{@ $css_content .= 'font-family:' . $content_font . ';';}</block>
<block cond="$content_font_size">{@ $css_content .= 'font-size:' . $content_font_size . ';';}</block>
<block cond="$content_line_height">{@ $css_content .= 'line-height:' . $content_line_height . ';';}</block>
<block cond="$content_word_break === 'none'">{@ $css_content .= 'white-space: nowrap;';}</block>
<block cond="$content_word_break !== 'none'">{@ $css_content .= 'word-break:' . ($content_word_break ?: 'normal') . '; word-wrap: break-word;';}</block>
{@ $css_content .= chr(125);}
{@ $css_content .= '.xe_content.editable p { margin: 0 0 ' . ($content_paragraph_spacing ?: 0) . ' 0;' . chr(125);}
<!--@endif-->
<!--@if($enable_autosave)-->
<input type="hidden" name="_saved_doc_title" value="{escape($saved_doc->title)}" />
@ -112,6 +111,14 @@ var auto_saved_msg = "{$lang->msg_auto_saved}";
content_field: jQuery('[name={$editor_content_key_name}]')
};
// Add style-sheet for the WYSIWYG
$(document.getElementsByTagName('link')).each(function() {
if ($(this).attr('rel') == 'stylesheet') {
settings.ckeconfig.contentsCss.push($(this).attr('href'));
}
});
// Prevent removal of icon fonts and Google code.
CKEDITOR.dtd.$removeEmpty.i = 0;
CKEDITOR.dtd.$removeEmpty.ins = 0;

View file

@ -1,41 +0,0 @@
@charset "utf-8";
/* NAVER (developers@xpressengine.com) */
.xe_content.editable img{border:0;max-width:100%;}
.xe_content.editable video{max-width:100%;}
.xe_content.editable blockquote.q1,
.xe_content.editable blockquote.q2,
.xe_content.editable blockquote.q3,
.xe_content.editable blockquote.q4,
.xe_content.editable blockquote.q5,
.xe_content.editable blockquote.q6,
.xe_content.editable blockquote.q7{padding:10px;margin:0 15px;border:0;}
.xe_content.editable blockquote.q1{padding:0 10px;border-left:2px solid #ccc}
.xe_content.editable blockquote.q2{padding:0 10px;background:url(./img/bg_qmark.gif) no-repeat left top}
.xe_content.editable blockquote.q3{border:1px solid #d9d9d9}
.xe_content.editable blockquote.q4{border:1px solid #d9d9d9;background:#fbfbfb}
.xe_content.editable blockquote.q5{border:2px solid #707070}
.xe_content.editable blockquote.q6{border:1px dashed #707070}
.xe_content.editable blockquote.q7{border:1px dashed #707070;background:#fbfbfb}
.xe_content.editable table .xe_selected_cell{background-color:#d6e9ff}
.xe_content.editable img.cke_iframe{background-color:#444}
.xe_content.editable blockquote
{
padding: 2px 0;
border-style: solid;
border-color: #ccc;
border-width: 0;
}
.xe_content.editable.cke_contents_ltr blockquote
{
padding-left: 20px;
padding-right: 8px;
border-left-width: 5px;
}
.xe_content.editable.cke_contents_rtl blockquote
{
padding-left: 8px;
padding-right: 20px;
border-right-width: 5px;
}

View file

@ -1,10 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" href="editor.css" />
<title>Rhymix</title>
</head>
<body class="xe_content editable">
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 B

View file

@ -1,10 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<skin version="0.2">
<title xml:lang="ko">Rhymix 기본 서식</title>
<title xml:lang="en">Rhymix Default</title>
<version>1.9</version>
<date>2016-04-27</date>
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
<name xml:lang="ko">NAVER</name>
</author>
</skin>

View file

@ -1,30 +0,0 @@
@charset "utf-8";
/* NAVER (developers@xpressengine.com) */
html { height: 100%; }
body { min-height: 100%; }
.xe_content blockquote.q1,
.xe_content blockquote.q2,
.xe_content blockquote.q3,
.xe_content blockquote.q4,
.xe_content blockquote.q5,
.xe_content blockquote.q6,
.xe_content blockquote.q7{padding:10px;margin:0 15px;border:0;}
.xe_content blockquote.q1{padding:0 10px;border-left:2px solid #ccc}
.xe_content blockquote.q2{padding:0 10px;background:url(./img/bg_qmark.gif) no-repeat left top}
.xe_content blockquote.q3{border:1px solid #d9d9d9}
.xe_content blockquote.q4{border:1px solid #d9d9d9;background:#fbfbfb}
.xe_content blockquote.q5{border:2px solid #707070}
.xe_content blockquote.q6{border:1px dashed #707070}
.xe_content blockquote.q7{border:1px dashed #707070;background:#fbfbfb}
.xe_content p{margin:0}
.xe_content blockquote
{
padding: 2px 0;
border-style: solid;
border-color: #ccc;
border-width: 0;
padding-left: 20px;
padding-right: 8px;
border-left-width: 5px;
}

View file

@ -1 +0,0 @@
style.css

View file

@ -1,22 +0,0 @@
@charset "utf-8";
/* NAVER (developers@xpressengine.com) */
html,body{height:100%}
body{margin:0;padding:0}
.xe_content{color:#000;}
.xe_content img{border:0;max-width:100%;width:auto;height:auto}
.xe_content blockquote.q1,
.xe_content blockquote.q2,
.xe_content blockquote.q3,
.xe_content blockquote.q4,
.xe_content blockquote.q5,
.xe_content blockquote.q6,
.xe_content blockquote.q7{padding:10px;margin:0 15px}
.xe_content blockquote.q1{padding:0 10px;border-left:2px solid #ccc}
.xe_content blockquote.q2{padding:0 10px;background:url(./img/bg_qmark.gif) no-repeat left top}
.xe_content blockquote.q3{border:1px solid #d9d9d9}
.xe_content blockquote.q4{border:1px solid #d9d9d9;background:#fbfbfb}
.xe_content blockquote.q5{border:2px solid #707070}
.xe_content blockquote.q6{border:1px dashed #707070}
.xe_content blockquote.q7{border:1px dashed #707070;background:#fbfbfb}
.xe_content table .xe_selected_cell{background-color:#d6e9ff}
.xe_content p{margin:0}

View file

@ -1,10 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" href="editor.css" />
<title>Rhymix</title>
</head>
<body class="xe_content editable">
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 B

View file

@ -1,49 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<skin version="0.2">
<title xml:lang="ko">XE 기본 서식</title>
<title xml:lang="en">XE Default Form</title>
<title xml:lang="zh-CN">XE默认样式</title>
<title xml:lang="vi">XE Mặc định</title>
<title xml:lang="jp">XEデフォルトスタイル</title>
<title xml:lang="zh-TW">XE預設樣式</title>
<title xml:lang="tr">XE Varsayılan Form</title>
<description xml:lang="ko">
XE 기본 문서 서식입니다.
있는 그대로 표시가 될 뿐 편집/ 출력시 아무런 영향을 끼치지 않습니다.
</description>
<description xml:lang="en">
XE's default document style.
It displays as it is, and does not affect during editing/printing.
</description>
<description xml:lang="zh-CN">
XE默认样式。
主题显示及编辑不会受到任何影响,即原样输出。
</description>
<description xml:lang="zh-TW">
XE預設樣式。
主題顯示和編輯不會受到影響。
</description>
<description xml:lang="jp">
XEの基本ドキュメント書式です。
そのまま表示されるだけで、編集・出力には影響しません。
</description>
<description xml:lang="tr">
XE varsayılan belge tarzı.
Olduğu gibi gösterir, düzenlemeye / yazdırmaya etki etmez.
</description>
<description xml:lang="vi">
Trang mẫu mặc định của XE.
Nó sẽ hiển thị trong phần sửa đổi bài viết và không ảnh hưởng đến bất cứ chức năng nào cả.
</description>
<version>1.7</version>
<date>2013-11-27</date>
<author email_address="developers@xpressengine.com" link="http://xpressengine.com/">
<name xml:lang="ko">NAVER</name>
<name xml:lang="zh-CN">NAVER</name>
<name xml:lang="zh-TW">NAVER</name>
<name xml:lang="jp">NAVER</name>
<name xml:lang="en">NAVER</name>
<name xml:lang="vi">NAVER</name>
<name xml:lang="tr">NAVER</name>
</author>
</skin>

View file

@ -1,19 +0,0 @@
@charset "utf-8";
/* NAVER (developers@xpressengine.com) */
.xe_content{color:#000;}
.xe_content blockquote.q1,
.xe_content blockquote.q2,
.xe_content blockquote.q3,
.xe_content blockquote.q4,
.xe_content blockquote.q5,
.xe_content blockquote.q6,
.xe_content blockquote.q7{padding:10px;margin:0 15px}
.xe_content blockquote.q1{padding:0 10px;border-left:2px solid #ccc}
.xe_content blockquote.q2{padding:0 10px;background:url(./img/bg_qmark.gif) no-repeat left top}
.xe_content blockquote.q3{border:1px solid #d9d9d9}
.xe_content blockquote.q4{border:1px solid #d9d9d9;background:#fbfbfb}
.xe_content blockquote.q5{border:2px solid #707070}
.xe_content blockquote.q6{border:1px dashed #707070}
.xe_content blockquote.q7{border:1px dashed #707070;background:#fbfbfb}
.xe_content p{margin:0}

View file

@ -1 +0,0 @@
style.css

View file

@ -72,16 +72,6 @@
</p>
</div>
</div>
<div class="x_control-group">
<label class="x_control-label">{$lang->guide_choose_text_formatting}</label>
<div class="x_controls">
<!--@foreach($content_style_list as $key => $val)-->
<label class="x_inline">
<input type="radio" name="content_style" value="{$key}" id="content_style_{$key}" checked="checked"|cond="$key==$editor_config->content_style||!$editor_config->content_style && $key=='ckeditor_light'"> {$val->title}
</label>
<!--@end-->
</div>
</div>
<h1>{$lang->comment_editor}</h1>
@ -124,16 +114,6 @@
</p>
</div>
</div>
<div class="x_control-group">
<label class="x_control-label">{$lang->guide_choose_comment_text_formatting}</label>
<div class="x_controls">
<!--@foreach($content_style_list as $key => $val)-->
<label class="x_inline">
<input type="radio" name="comment_content_style" value="{$key}" id="comment_content_style_{$key}" checked="checked"|cond="$key==$editor_config->comment_content_style||!$editor_config->comment_content_style && $key=='ckeditor_light'"> {$val->title}
</label>
<!--@end-->
</div>
</div>
<h1>{$lang->editor_common_settings}</h1>

View file

@ -47,19 +47,6 @@
</select>
</td>
</tr>
<tr class="editor_skin">
<th scope="row" style="text-align:right">{$lang->content_style}</th>
<td>
<select name="content_style">
<option loop="$content_style_list => $key, $val" value="{$key}" selected="selected"|cond="$key==$editor_config->content_style||!$editor_config->content_style&&$key=='default'">{$val->title}</option>
</select>
</td>
<td>
<select name="comment_content_style">
<option loop="$content_style_list => $key, $val" value="{$key}" selected="selected"|cond="$key==$editor_config->comment_content_style||!$editor_config->comment_content_style&&$key=='default'">{$val->title}</option>
</select>
</td>
</tr>
<tr class="editor_skin">
<th scope="row" style="text-align:right">{$lang->editor_height}</th>
<td>