css[ ++n ] = [ VENDER_PREFIX[ name ] || name, obj[ p ] ].join( ':' );
};
};
- sp && ( css[ ++n ] = SPECIAL_FIX( obj ) );
+ sp && ( css[ ++n ] = 'filter:' + SPECIAL_FIX( obj ) );
return css.join( ';' );
},
if( ieFix[ p ] ){
this._dirty |= X.Dom.Dirty.IE_FILTER;
};
- css[ camelize( p ) ] = nameOrObj[ p ];
+ v = nameOrObj[ p ];
+ v || v === 0 ? css[ camelize( p ) ] = v : delete css[ camelize( p ) ];
+ if( p === 'display' ){
+ v === 'none' ? ( this._state |= X.Dom.State.IE5_DISPLAY_NONE_FIX ) : ( this._state &= ~X.Dom.State.IE5_DISPLAY_NONE_FIX );
+ v === 'none' ? ( this._state |= X.Dom.State.DISPLAY_NONE ) : ( this._state &= ~X.Dom.State.DISPLAY_NONE );
+ };
};
this._dirty |= X.Dom.Dirty.CSS;
this.parent && this._reserveUpdate();
if( css[ name ] === v ) return this;
if( X.Dom.Style.IE_FILTER_FIX[ name ] ){
this._dirty |= X.Dom.Dirty.IE_FILTER;
- };
+ };
if( !v && v !== 0 ){
delete css[ name ];
} else {
};
delete this._cssText;
this._dirty |= X.Dom.Dirty.CSS;
- // parent でなく this._root!
+ if( name === 'display' ){
+ v === 'none' ? ( this._state |= X.Dom.State.IE5_DISPLAY_NONE_FIX ) : ( this._state &= ~X.Dom.State.IE5_DISPLAY_NONE_FIX );
+ v === 'none' ? ( this._state |= X.Dom.State.DISPLAY_NONE ) : ( this._state &= ~X.Dom.State.DISPLAY_NONE );
+ };
+ // parent でなく this._root! でなくて this._state & in tree
this.parent && this._reserveUpdate();
return this;
};
};
return this.css( obj );
};
+ // getter
+ if( this._dirty & X.Dom.Dirty.CSS && !( this._cssText = X.Dom.Style.objToCssText( this._css ) ) ){
+ delete this._cssText;
+ };
return this._cssText;
};
}) :
X.UA.IE && 5.5 <= X.UA.IE ?
(function(){
+ if( this === Node.root && X.Dom.Event._lastFontSize ) return X.Dom.Event._lastFontSize;
var font = this._rawNode.currentStyle.fontSize,
vu = X.Dom.Style._Util._splitValueAndUnit( font ),
v = vu[ 0 ],
}) :
X.UA.IE ?
(function(){
- var elm = this._rawNode, v;
+ var elm = this._rawNode || this._ie4getRawNode(), v;
elm.insertAdjacentHTML( 'BeforeEnd', '<span style="visivility:hidden;line-height:1;">X</span>' );
elm = elm.children[ elm.children.length - 1 ];
v = elm.offsetHeight;
X.Dom.listenOnce( X.Dom.Event.DOM_PRE_INIT, function(){
- var testStyle = X.Dom._root;
+ var testStyle = X.Dom._root.style;
X.Dom.Style.VENDER_PREFIX = (function(){
var ret = {},