Merge pull request #1053 from rhymix/pr/css-unload-minimal

.btn 및 .message 클래스의 CSS 속성을 제거하는 옵션 제공 #950
This commit is contained in:
Kijin Sung 2018-08-06 16:39:48 +09:00 committed by GitHub
commit 9e08bd40ac
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 199 additions and 308 deletions

View file

@ -562,19 +562,7 @@ class HTMLDisplayHandler
*/
function _loadDesktopJSCSS()
{
$lang_type = Context::getLangType();
$this->_loadCommonJSCSS();
// for admin page, add admin css
if(Context::get('module') == 'admin' || strpos(Context::get('act'), 'Admin') > 0)
{
Context::loadFile(array('./modules/admin/tpl/css/admin.css', '', '', 10), true);
Context::loadFile(array("./modules/admin/tpl/css/admin.iefix.css", '', 'ie', 10), true);
Context::loadFile('./modules/admin/tpl/js/admin.js', true);
Context::loadFile(array('./modules/admin/tpl/css/admin.bootstrap.css', '', '', 1), true);
Context::loadFile(array('./modules/admin/tpl/js/jquery.tmpl.js', '', '', 1), true);
Context::loadFile(array('./modules/admin/tpl/js/jquery.jstree.js', '', '', 1), true);
}
}
/**
@ -583,7 +571,6 @@ class HTMLDisplayHandler
private function _loadMobileJSCSS()
{
$this->_loadCommonJSCSS();
Context::loadFile(array('./common/css/mobile.css', '', '', -1500000000), true);
}
/**

View file

@ -288,9 +288,11 @@ class FrontEndFileHandler extends Handler
if (!file_exists($file->fileFullPath))
{
return;
}
}
$default_font_config = Context::get('default_font_config') ?: getController('editor')->default_font_config;
$file->vars['enable_xe_btn_styles'] = (defined('DISABLE_XE_BTN_STYLES') && DISABLE_XE_BTN_STYLES) ? 'false' : 'true';
$file->vars['enable_xe_msg_styles'] = (defined('DISABLE_XE_MSG_STYLES') && DISABLE_XE_MSG_STYLES) ? 'false' : 'true';
$file->vars = array_merge($file->vars, $default_font_config);
if ($file->fileExtension === 'less')
{

View file

@ -1,37 +0,0 @@
@charset "utf-8";
/*! Copyright (C) NAVER <http://www.navercorp.com> */
/* @author NAVER <developers@xpressengine.com> */
/* Message */
.message {
position: relative;
margin: 1em 0;
padding: 0 1em;
border: 1px solid #ddd;
border-radius: 4px;
line-height: 1.4;
font-size: 13px;
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
background-color: #f8f8f8;
}
body>.message {
margin: 1em;
}
.message p {
margin: 1em 0 !important;
}
.message.info {
border-color: #BCE8F1;
color: #3A87AD;
background-color: #D9EDF7;
}
.message.error {
border-color: #EED3D7;
color: #B94A48;
background-color: #F2DEDE;
}
.message.update {
border-color: #D6E9C6;
color: #468847;
background-color: #DFF0D8;
}

View file

@ -26,7 +26,7 @@ a img {
.word_break(@wb) when (@wb = none) {
white-space: nowrap;
}
.xe_content {
.xe_content, .rhymix_content {
font-family: @default_font_family;
font-size: @default_font_size;
line-height: @default_line_height;
@ -65,7 +65,7 @@ a img {
}
/* Popup Menu Area */
#popup_menu_area {
#rhymix_popup_menu, #popup_menu_area {
position: absolute;
z-index: 9999;
margin: 10px 0;
@ -98,7 +98,7 @@ a img {
}
}
@media screen and (max-width: 400px) {
#popup_menu_area {
#rhymix_popup_menu, #popup_menu_area {
min-width:120px;
max-width:95%;
font-size: 13px;
@ -137,40 +137,6 @@ a img {
border: 0;
}
/* Message */
.message {
position: relative;
margin: 1em 0;
padding: 0 1em;
border: 1px solid #ddd;
border-radius: 4px;
line-height: 1.4;
font-size: 13px;
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
background-color: #f8f8f8;
p {
margin: 1em 0 !important;
}
&.info {
border-color: #BCE8F1;
color: #3A87AD;
background-color: #D9EDF7;
}
&.error {
border-color: #EED3D7;
color: #B94A48;
background-color: #F2DEDE;
}
&.update {
border-color: #D6E9C6;
color: #468847;
background-color: #DFF0D8;
}
}
body > .message {
margin: 1em;
}
/* Waiting for server response */
.wfsr {
z-index: 100;
@ -191,125 +157,6 @@ body > .message {
background: #333 url("../../common/img/msg.loading.gif") no-repeat center 15px;
}
/* Button */
.btnArea {
clear: both;
margin: 10px 0;
padding: 0;
text-align: right;
zoom: 1;
&:after {
clear: both;
display: block;
content: "";
}
}
.btn {
display: inline-block;
*display: inline;
margin: 0;
padding: 0 12px !important;
height: 24px !important;
overflow: visible;
border: 1px solid #bbbbbb;
border-color: #e6e6e6 #e6e6e6 #bfbfbf;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
border-bottom-color: #a2a2a2;
border-radius: 2px;
text-decoration: none !important;
text-align: center;
text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
vertical-align: top;
line-height: 24px !important;
font-family: inherit;
font-size: 12px;
color: #333333;
*zoom: 1;
cursor: pointer;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
background-color: #f5f5f5;
*background-color: #e6e6e6;
background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
background-image: -webkit-gradient(top, #ffffff, #e6e6e6);
background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
background-image: linear-gradient(top, #ffffff, #e6e6e6);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
&:hover, &:active, &[disabled] {
color: #333;
background-color: #e6e6e6;
*background-color: #d9d9d9;
}
>a, >button, >input, >span {
display: inline-block;
*zoom: 1;
margin: 0 -12px !important;
padding: 0 12px !important;
overflow: visible;
width: auto;
height: 24px;
border: 0;
vertical-align: top;
text-decoration: none !important;
line-height: 24px;
font-family: inherit;
font-size: 12px;
color: #333;
cursor: pointer;
background: none;
}
}
input.btn, button.btn {
height: 26px !important;
}
.btn-group {
position: relative;
display: inline-block;
*display: inline;
*margin-left: .3em;
white-space: nowrap;
vertical-align: middle;
font-size: 0;
*zoom: 1;
&:first-child {
*margin-left: 0;
}
&+.btn-group {
margin-left: 5px;
}
>.btn {
position: relative;
-webkit-border-radius: 0;
-moz-border-radius: 0;
border-radius: 0;
&+.btn {
margin-left: -1px;
}
&:first-child {
margin-left: 0;
-webkit-border-bottom-left-radius: 4px;
-moz-border-radius-bottomleft: 4px;
border-bottom-left-radius: 4px;
-webkit-border-top-left-radius: 4px;
-moz-border-radius-topleft: 4px;
border-top-left-radius: 4px;
}
&:last-child {
-webkit-border-top-right-radius: 4px;
-moz-border-radius-topright: 4px;
border-top-right-radius: 4px;
-webkit-border-bottom-right-radius: 4px;
-moz-border-radius-bottomright: 4px;
border-bottom-right-radius: 4px;
}
&:hover, &:focus, &:active, &.active {
z-index: 2;
}
}
}
/* Debug */
#rhymix_debug_button {
display: none;
@ -449,3 +296,181 @@ input.btn, button.btn {
}
}
}
/* Button (for XE compatibility */
.btnArea_mixin(@enabled) when (@enabled = true) {
clear: both;
margin: 10px 0;
padding: 0;
text-align: right;
zoom: 1;
&:after {
clear: both;
display: block;
content: "";
}
}
.btnArea_mixin(@enabled) when (@enabled = false) { }
.btnArea {
.btnArea_mixin(@enable_xe_btn_styles);
}
.rhymix_button_wrapper {
.btnArea_mixin(true);
}
.btn_mixin(@enabled) when (@enabled = true) {
display: inline-block;
*display: inline;
margin: 0;
padding: 0 12px !important;
height: 24px !important;
overflow: visible;
border: 1px solid #bbbbbb;
border-color: #e6e6e6 #e6e6e6 #bfbfbf;
border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
border-bottom-color: #a2a2a2;
border-radius: 2px;
text-decoration: none !important;
text-align: center;
text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
vertical-align: top;
line-height: 24px !important;
font-family: inherit;
font-size: 12px;
color: #333333;
*zoom: 1;
cursor: pointer;
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
background-color: #f5f5f5;
*background-color: #e6e6e6;
background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
background-image: -webkit-gradient(top, #ffffff, #e6e6e6);
background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
background-image: linear-gradient(top, #ffffff, #e6e6e6);
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);
filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
&:hover, &:active, &[disabled] {
color: #333;
background-color: #e6e6e6;
*background-color: #d9d9d9;
}
>a, >button, >input, >span {
display: inline-block;
*zoom: 1;
margin: 0 -12px !important;
padding: 0 12px !important;
overflow: visible;
width: auto;
height: 24px;
border: 0;
vertical-align: top;
text-decoration: none !important;
line-height: 24px;
font-family: inherit;
font-size: 12px;
color: #333;
cursor: pointer;
background: none;
}
input&, button& {
height: 26px !important;
}
}
.btn_mixin(@enabled) when (@enabled = false) { }
.btn {
.btn_mixin(@enable_xe_btn_styles);
}
.rhymix_button {
.btn_mixin(true);
}
.btn-group_mixin(@enabled) when (@enabled = true) {
position: relative;
display: inline-block;
*display: inline;
*margin-left: .3em;
white-space: nowrap;
vertical-align: middle;
font-size: 0;
*zoom: 1;
&:first-child {
*margin-left: 0;
}
&+.btn-group {
margin-left: 5px;
}
>.btn {
position: relative;
-webkit-border-radius: 0;
-moz-border-radius: 0;
border-radius: 0;
&+.btn {
margin-left: -1px;
}
&:first-child {
margin-left: 0;
-webkit-border-bottom-left-radius: 4px;
-moz-border-radius-bottomleft: 4px;
border-bottom-left-radius: 4px;
-webkit-border-top-left-radius: 4px;
-moz-border-radius-topleft: 4px;
border-top-left-radius: 4px;
}
&:last-child {
-webkit-border-top-right-radius: 4px;
-moz-border-radius-topright: 4px;
border-top-right-radius: 4px;
-webkit-border-bottom-right-radius: 4px;
-moz-border-radius-bottomright: 4px;
border-bottom-right-radius: 4px;
}
&:hover, &:focus, &:active, &.active {
z-index: 2;
}
}
}
.btn-group_mixin(@enabled) when (@enabled = false) { }
.btn-group {
.btn-group_mixin(@enable_xe_btn_styles);
}
/* Message (for XE compatibility) */
.message_mixin(@enabled) when (@enabled = true) {
position: relative;
margin: 1em 0;
padding: 0 1em;
border: 1px solid #ddd;
border-radius: 4px;
line-height: 1.4;
font-size: 13px;
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
background-color: #f8f8f8;
p {
margin: 1em 0 !important;
}
&.info {
border-color: #BCE8F1;
color: #3A87AD;
background-color: #D9EDF7;
}
&.error {
border-color: #EED3D7;
color: #B94A48;
background-color: #F2DEDE;
}
&.update {
border-color: #D6E9C6;
color: #468847;
background-color: #DFF0D8;
}
body > & {
margin: 1em;
}
}
.message_mixin(@enabled) when (@enabled = false) { }
.message {
.message_mixin(@enable_xe_msg_styles);
}
.rhymix_message {
.message_mixin(true);
}

View file

@ -1,5 +1,10 @@
<load target="css/admin.bootstrap.css" />
<load target="css/admin.iefix.css" />
<load target="css/admin.css" />
<load target="js/admin.js" />
<load target="js/jquery.tmpl.js" />
<load target="js/jquery.jstree.js" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=2, user-scalable=yes" />
<script>
var admin_menu_srl = "{$admin_menu_srl}";
xe.cmd_find = "{$lang->cmd_find}";

View file

@ -1,3 +1,9 @@
<load target="css/admin.bootstrap.css" />
<load target="css/admin.iefix.css" />
<load target="css/admin.css" />
<load target="js/admin.js" />
<load target="js/jquery.tmpl.js" />
<load target="js/jquery.jstree.js" />
<div class="x">
<div class="content" id="content">
{$content}

View file

@ -15,7 +15,6 @@ input[type=radio]{width:13px;height:13px;margin:0;padding:0}
/* Background */
.rp li li,
.rp .answer,
.rp .btn,
/* Body */
.bd{background:#f8f8f8;padding:1px 0}
.co{margin:10px;line-height:1.4;font-size:14px;color:#333}
@ -85,7 +84,6 @@ input[type=radio]{width:13px;height:13px;margin:0;padding:0}
.rp li li li li{padding-left:55px;background-position:40px -145px}
.rp li li li li li{padding-left:70px;background-position:55px -145px}
.rp li li li li li li{padding-left:85px;background-position:70px -145px}
.rp .btn{display:inline-block;width:15px;height:15px;overflow:hidden;vertical-align:middle;text-indent:15px}
.rp .btn.ed{background-position:0 -32px}
.rp .btn.de{background-position:-15px -32px}
.rp .btn.re{background-position:-30px -32px}

View file

@ -233,49 +233,6 @@
.xc .pagination ul>li:last-child>a,
.xc .pagination ul>li:last-child>span{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}
.xc .pagination-centered{text-align:center}
/* Button */
.xc .btn{font-size:12px;font-family:inherit;display:inline-block;*display:inline;padding:4px 12px;margin-bottom:0;*margin-left:.3em;line-height:20px;height:auto;color:#333333;text-align:center;text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-moz-linear-gradient(top, #ffffff, #e6e6e6);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));background-image:-webkit-linear-gradient(top, #ffffff, #e6e6e6);background-image:-o-linear-gradient(top, #ffffff, #e6e6e6);background-image:linear-gradient(to bottom, #ffffff, #e6e6e6);background-repeat:repeat-x;border:1px solid #cccccc;*border:0;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);border-bottom-color:#b3b3b3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);*zom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05)}
.xc .btn:hover,
.xc .btn:focus,
.xc .btn:active,
.xc .btn.active,
.xc .btn.disabled,
.xc .btn[disabled]{color:#333333;background-color:#e6e6e6;*background-color:#d9d9d9}
.xc .btn:active,
.xc .btn.active{background-color:#cccccc \9}
.xc .btn:first-child{*margin-left:0}
.xc .btn:hover,
.xc .btn:focus{color:#333333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position 0.1s linear;-moz-transition:background-position 0.1s linear;-o-transition:background-position 0.1s linear;transition:background-position 0.1s linear}
.xc .btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
.xc .btn.active,
.xc .btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05)}
.xc .btn.disabled,
.xc .btn[disabled]{cursor:default;background-image:none;opacity:0.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}
.xc .btn-inverse.active{color:rgba(255, 255, 255, 0.75)}
.xc .btn-inverse{color:#ffffff!important;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#363636;*background-color:#222222;background-image:-moz-linear-gradient(top, #444444, #222222);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#444444), to(#222222));background-image:-webkit-linear-gradient(top, #444444, #222222);background-image:-o-linear-gradient(top, #444444, #222222);background-image:linear-gradient(to bottom, #444444, #222222);background-repeat:repeat-x;border-color:#222222 #222222 #000000;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
.xc .btn-inverse:hover,
.xc .btn-inverse:focus,
.xc .btn-inverse:active,
.xc .btn-inverse.active,
.xc .btn-inverse.disabled,
.xc .btn-inverse[disabled]{color:#ffffff;background-color:#222222;*background-color:#151515}
.xc .btn-inverse:active,
.xc .btn-inverse.active{background-color:#080808 \9}
.xc button.btn,
.xc input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}
.xc button.btn::-moz-focus-inner,
.xc input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}
.xc .btn-group{position:relative;display:inline-block;*display:inline;*margin-left:.3em;font-size:0;white-space:nowrap;vertical-align:middle;*zoom:1}
.xc .btn-group:first-child{*margin-left:0}
.xc .btn-group+.btn-group{margin-left:5px}
.xc .btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
.xc .btn-group>.btn+.btn{margin-left:-1px}
.xc .btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}
.xc .btn-group>.btn:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}
.xc .btn-group>.btn:hover,
.xc .btn-group>.btn:focus,
.xc .btn-group>.btn:active,
.xc .btn-group>.btn.active{z-index:2}
/* Communication Module Customize */
.xc,
.xc input,

View file

@ -233,49 +233,6 @@
.xm .pagination ul>li:last-child>a,
.xm .pagination ul>li:last-child>span{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}
.xm .pagination-centered{text-align:center}
/* Button */
.xm .btn{font-size:12px;font-family:inherit;display:inline-block;*display:inline;padding:4px 12px;margin-bottom:0;*margin-left:.3em;line-height:20px;height:auto;color:#333333;text-align:center;text-shadow:0 1px 1px rgba(255, 255, 255, 0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-moz-linear-gradient(top, #ffffff, #e6e6e6);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));background-image:-webkit-linear-gradient(top, #ffffff, #e6e6e6);background-image:-o-linear-gradient(top, #ffffff, #e6e6e6);background-image:linear-gradient(to bottom, #ffffff, #e6e6e6);background-repeat:repeat-x;border:1px solid #cccccc;*border:0;border-color:#e6e6e6 #e6e6e6 #bfbfbf;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);border-bottom-color:#b3b3b3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#e6e6e6', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05)}
.xm .btn:hover,
.xm .btn:focus,
.xm .btn:active,
.xm .btn.active,
.xm .btn.disabled,
.xm .btn[disabled]{color:#333333;background-color:#e6e6e6;*background-color:#d9d9d9}
.xm .btn:active,
.xm .btn.active{background-color:#cccccc \9}
.xm .btn:first-child{*margin-left:0}
.xm .btn:hover,
.xm .btn:focus{color:#333333;text-decoration:none;background-position:0 -15px;-webkit-transition:background-position 0.1s linear;-moz-transition:background-position 0.1s linear;-o-transition:background-position 0.1s linear;transition:background-position 0.1s linear}
.xm .btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}
.xm .btn.active,
.xm .btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);-moz-box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);box-shadow:inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05)}
.xm .btn.disabled,
.xm .btn[disabled]{cursor:default;background-image:none;opacity:0.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}
.xm .btn-inverse.active{color:rgba(255, 255, 255, 0.75)}
.xm .btn-inverse{color:#ffffff!important;text-shadow:0 -1px 0 rgba(0, 0, 0, 0.25);background-color:#363636;*background-color:#222222;background-image:-moz-linear-gradient(top, #444444, #222222);background-image:-webkit-gradient(linear, 0 0, 0 100%, from(#444444), to(#222222));background-image:-webkit-linear-gradient(top, #444444, #222222);background-image:-o-linear-gradient(top, #444444, #222222);background-image:linear-gradient(to bottom, #444444, #222222);background-repeat:repeat-x;border-color:#222222 #222222 #000000;border-color:rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444', endColorstr='#ff222222', GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}
.xm .btn-inverse:hover,
.xm .btn-inverse:focus,
.xm .btn-inverse:active,
.xm .btn-inverse.active,
.xm .btn-inverse.disabled,
.xm .btn-inverse[disabled]{color:#ffffff;background-color:#222222;*background-color:#151515}
.xm .btn-inverse:active,
.xm .btn-inverse.active{background-color:#080808 \9}
.xm button.btn,
.xm input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}
.xm button.btn::-moz-focus-inner,
.xm input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}
.xm .btn-group{position:relative;display:inline-block;*display:inline;*margin-left:.3em;font-size:0;white-space:nowrap;vertical-align:middle;*zoom:1}
.xm .btn-group:first-child{*margin-left:0}
.xm .btn-group+.btn-group{margin-left:5px}
.xm .btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}
.xm .btn-group>.btn+.btn{margin-left:-1px}
.xm .btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}
.xm .btn-group>.btn:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}
.xm .btn-group>.btn:hover,
.xm .btn-group>.btn:focus,
.xm .btn-group>.btn:active,
.xm .btn-group>.btn.active{z-index:2}
/* Member module customize */
.xm,
.xm input,

View file

@ -38,17 +38,13 @@ class FrontEndFileHandlerTest extends \Codeception\TestCase\Test
$this->assertEquals($expected, $handler->getJsFileList('body'));
});
$this->specify("css and scss", function() {
$this->specify("css and less", function() {
$handler = new FrontEndFileHandler();
$handler->loadFile(array('./common/css/rhymix.less'));
$handler->loadFile(array('./common/css/mobile.css'));
$result = $handler->getCssFileList(true);
$this->assertRegexp('/\.rhymix\.less\.css\?\d+$/', $result[0]['file']);
$this->assertEquals('all', $result[0]['media']);
$this->assertEmpty($result[0]['targetie']);
$this->assertEquals('/rhymix/common/css/mobile.css' . $this->_filemtime('common/css/mobile.css'), $result[1]['file']);
$this->assertEquals('all', $result[1]['media']);
$this->assertEmpty($result[1]['targetie']);
});
$this->specify("order (duplicate)", function() {
@ -157,14 +153,10 @@ class FrontEndFileHandlerTest extends \Codeception\TestCase\Test
$this->specify("minify (css)", function() {
$handler = new FrontEndFileHandler();
$handler->loadFile(array('./common/css/rhymix.less'));
$handler->loadFile(array('./common/css/mobile.css'));
$result = $handler->getCssFileList(true);
$this->assertRegexp('/\.rhymix\.less\.min\.css\b/', $result[0]['file']);
$this->assertEquals('all', $result[0]['media']);
$this->assertEmpty($result[0]['targetie']);
$this->assertRegexp('/minified\/common\.css\.mobile\.min\.css\?\d+$/', $result[1]['file']);
$this->assertEquals('all', $result[1]['media']);
$this->assertEmpty($result[1]['targetie']);
});
$this->specify("minify (js)", function() {
@ -182,7 +174,7 @@ class FrontEndFileHandlerTest extends \Codeception\TestCase\Test
$this->specify("concat (css)", function() {
$handler = new FrontEndFileHandler();
$handler->loadFile(array('./common/css/rhymix.less'));
$handler->loadFile(array('./common/css/mobile.css'));
$handler->loadFile(array('./common/css/bootstrap-responsive.css'));
$handler->loadFile(array('http://external.host/style.css'));
$handler->loadFile(array('./common/css/bootstrap.css', null, 'IE'));
$handler->loadFile(array('./tests/_data/formatter/concat.source1.css'));
@ -257,7 +249,6 @@ class FrontEndFileHandlerTest extends \Codeception\TestCase\Test
$this->specify("blocked scripts", function() {
$handler = new FrontEndFileHandler();
$handler->loadFile(array('./common/css/mobile.css'));
$handler->loadFile(array('./common/css/xe.min.css'));
$handler->loadFile(array('./common/js/common.js'));
$handler->loadFile(array('./common/js/xe.js'));