COMBI : 2 < 13
},
- SPECIAL_VALUES : {
- AUTO : Number.POSITIVE_INFINITY,
- FULL : X.Dom // something unigue value; 100%
- },
-
- PropNo : {},
-
UNIT : {
'px' : 0,
'em' : 1,
SPECIAL_FIX = me.SPECIAL_FIX,
n = -1,
p, name, sp;
+ if( !obj ) return ''; // Opera7.5 未満?
for( p in obj ){
name = uncamelize( p );
if( FIX_PROP[ name ] ){
},
IE_FILTER_FIX :
- X.UA.IE && X.UA.IE < 9 ?
+ X.UA.IE && X.UA.IE < 9 && !X.UA.MacIE ?
{
opacity : 1,
textShadow : 1
X.Dom.Style.SPECIAL_FIX =
// ~IE8
- X.UA.IE && X.UA.IE < 9 ?
+ X.UA.IE && X.UA.IE < 9 && !X.UA.MacIE?
(function( obj ){
var test = X.Dom.Style.SPECIAL_FIX_PROP,
filters = [],
};
/*
- * ここでは HTMLElement のチャックは行わない!
+ * ここでは HTMLElement のチ1ェックは行わない!
+ * TODO
+ * body に css attr がセットされた場合には X.Dom.baseFontSize をクリア
*/
X.Dom.Node.prototype._getCharSize =
window.getComputedStyle ?
(function(){
- if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
- Node.root._updateTimerID && Node.root._startUpdate();
+ Node._body._updateTimerID && Node._body._startUpdate();
+ if( this === Node._body && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
if( this._fontSize ) return this._fontSize;
return this._fontSize = parseFloat( getComputedStyle( this._rawNode, null ).fontSize );
}) :
document.defaultView && document.defaultView.getComputedStyle ?
(function(){
- if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
- Node.root._updateTimerID && Node.root._startUpdate();
+ Node._body._updateTimerID && Node._body._startUpdate();
+ if( this === Node._body && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
if( this._fontSize ) return this._fontSize;
return this._fontSize = parseFloat( document.defaultView.getComputedStyle( this._rawNode, null ).fontSize );
}) :
X.UA.IE && 5.5 <= X.UA.IE ?
(function(){
var font, vu, v, u, _v;
- if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
- Node.root._updateTimerID && Node.root._startUpdate();
+ Node._body._updateTimerID && Node._body._startUpdate();
+ if( this === Node._body && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
if( this._fontSize ) return this._fontSize;
font = this._rawNode.currentStyle.fontSize;
X.Dom.DOM_W3C ?
(function(){
var elm, v;
- if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
- Node.root._updateTimerID && Node.root._startUpdate();
+ Node._body._updateTimerID && Node._body._startUpdate();
+ if( this === Node._body && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
if( this._fontSize ) return this._fontSize;
this._rawNode.appendChild( elm = document.createElement( 'span' ) );
this._rawNode.removeChild( elm );
return this._fontSize = v;
}) :
- X.UA.IE ?
+ X.Dom.DOM_IE4 ?
(function(){
var font, vu, v, u, _v;
- if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
- Node.root._updateTimerID && Node.root._startUpdate();
+ Node._body._updateTimerID && Node._body._startUpdate();
+ if( this === Node._body && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
if( this._fontSize ) return this._fontSize;
if( this._css && ( font = this._css.fontSize ) ){
}) :
(function(){
var elm, v;
- if( this === Node.root && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
- Node.root._updateTimerID && Node.root._startUpdate();
+ if( this === Node._body && X.Dom.baseFontSize ) return X.Dom.baseFontSize;
+ Node._body._updateTimerID && Node._body._startUpdate();
if( this._fontSize ) return this._fontSize;
elm = this._rawNode || this._ie4getRawNode();
X.Dom.Style.SPECIAL_FIX_PROP =
// ~IE8
- X.UA.IE && X.UA.IE < 9 ?
+ X.UA.IE && X.UA.IE < 9 && !X.UA.MacIE ?
{
filter : 1,
opacity : 2//, uinode ChromeNode で行う
for( i = list.length; i; ){
unit = list[ --i ];
- output[ unit ] = xnode.css( 'width', 100 + unit ).width() / 100;
+ output[ unit ] = xnode.css( 'width', 10 + unit ).width() / 10;
};
output = X.Dom.Style._FONT_SIZE_RATIO = {},
output[ size ] = xnode.css( 'fontSize', size ).height();// / base;
};
- // 以下解決、scroll 中に timer が無視される iOS の問題が原因(dom追加で起こったスクロール?)
- // ipod touch 1st で必要なんですけど、、、
- //xnode._rawNode.style.cssText = '';
- xnode.cssText( '' ).empty(); //._startUpdate();
+ xnode.cssText( '' ).empty();
} );