@@ -778,13 +778,6 @@ module.exports = function() {
778778 }
779779
780780 //style
781- var uppercaseRegex = / [ A - Z ] / g
782- function toLowerCase ( capital ) { return "-" + capital . toLowerCase ( ) }
783- function normalizeKey ( key ) {
784- return key [ 0 ] === "-" && key [ 1 ] === "-" ? key :
785- key === "cssFloat" ? "float" :
786- key . replace ( uppercaseRegex , toLowerCase )
787- }
788781 function updateStyle ( element , old , style ) {
789782 if ( old === style ) {
790783 // Styles are equivalent, do nothing.
@@ -800,21 +793,26 @@ module.exports = function() {
800793 // Add new style properties
801794 for ( var key in style ) {
802795 var value = style [ key ]
803- if ( value != null ) element . style . setProperty ( normalizeKey ( key ) , String ( value ) )
796+ if ( value != null ) {
797+ if ( key . indexOf ( "-" ) > - 1 ) element . style . setProperty ( key , String ( value ) )
798+ else element . style [ key ] = String ( value )
799+ }
804800 }
805801 } else {
806802 // Both old & new are (different) objects.
807803 // Update style properties that have changed
808804 for ( var key in style ) {
809805 var value = style [ key ]
810806 if ( value != null && ( value = String ( value ) ) !== String ( old [ key ] ) ) {
811- element . style . setProperty ( normalizeKey ( key ) , value )
807+ if ( key . indexOf ( "-" ) > - 1 ) element . style . setProperty ( key , value )
808+ else element . style [ key ] = value
812809 }
813810 }
814811 // Remove style properties that no longer exist
815812 for ( var key in old ) {
816813 if ( old [ key ] != null && style [ key ] == null ) {
817- element . style . removeProperty ( normalizeKey ( key ) )
814+ if ( key . indexOf ( "-" ) > - 1 ) element . style . removeProperty ( key )
815+ else element . style [ key ] = ""
818816 }
819817 }
820818 }
0 commit comments