diff --git a/src/css.js b/src/css.js index 72a807bfc..3e7073507 100644 --- a/src/css.js +++ b/src/css.js @@ -151,7 +151,7 @@ function getWidthOrHeight( elem, dimension, extra ) { // Support: IE 10 - 11+ // IE misreports `getComputedStyle` of table rows with width/height // set in CSS while `offset*` properties report correct values. - // Support: Firefox 70+ + // Support: Firefox 70 - 135+ // Firefox includes border widths // in computed dimensions for table rows. (gh-4529) ( !support.reliableTrDimensions() && nodeName( elem, "tr" ) ) ) && diff --git a/src/css/curCSS.js b/src/css/curCSS.js index b0f0a7555..942017bbe 100644 --- a/src/css/curCSS.js +++ b/src/css/curCSS.js @@ -30,10 +30,9 @@ export function curCSS( elem, name, computed ) { if ( isCustomProp && ret ) { - // Support: Firefox 105+, Chrome <=105+ + // Support: Firefox 105 - 135+ // Spec requires trimming whitespace for custom properties (gh-4926). - // Firefox only trims leading whitespace. Chrome just collapses - // both leading & trailing whitespace to a single space. + // Firefox only trims leading whitespace. // // Fall back to `undefined` if empty string returned. // This collapses a missing definition with property defined diff --git a/src/css/support.js b/src/css/support.js index 93459c6b6..bca0b6dbf 100644 --- a/src/css/support.js +++ b/src/css/support.js @@ -25,12 +25,7 @@ support.reliableTrDimensions = function() { tr = document.createElement( "tr" ); table.style.cssText = "position:absolute;left:-11111px;border-collapse:separate"; - tr.style.cssText = "box-sizing:content-box;border:1px solid"; - - // Support: Chrome 86+ - // Height set through cssText does not get applied. - // Computed height then comes back as 0. - tr.style.height = "1px"; + tr.style.cssText = "box-sizing:content-box;border:1px solid;height:1px"; div.style.height = "9px"; // Support: Android Chrome 86+ diff --git a/src/selector/rbuggyQSA.js b/src/selector/rbuggyQSA.js index b056ffe75..acd277554 100644 --- a/src/selector/rbuggyQSA.js +++ b/src/selector/rbuggyQSA.js @@ -25,7 +25,6 @@ if ( isIE ) { if ( !support.cssHas ) { - // Support: Chrome 105 - 110+, Safari 15.4 - 16.3+ // Our regular `try-catch` mechanism fails to detect natively-unsupported // pseudo-classes inside `:has()` (such as `:has(:contains("Foo"))`) // in browsers that parse the `:has()` argument as a forgiving selector list. diff --git a/test/unit/css.js b/test/unit/css.js index e232f5db0..8a96fb357 100644 --- a/test/unit/css.js +++ b/test/unit/css.js @@ -1379,7 +1379,7 @@ testIframe( function( assert, jQuery, window, document, widthBeforeSet, widthAfterSet ) { assert.expect( 2 ); - // Support: Firefox 126+ + // Support: Firefox 126 - 135+ // Newer Firefox implements CSS zoom in a way it affects // those values slightly. assert.ok( /^100(?:|\.0\d*)px$/.test( widthBeforeSet ), "elem.css('width') works correctly with browser zoom" ); @@ -1812,14 +1812,9 @@ QUnit.testUnlessIE( "css(--customProperty)", function( assert ) { var div = jQuery( "
" ).appendTo( "#qunit-fixture" ), $elem = jQuery( "
" ).addClass( "test__customProperties" ) - .appendTo( "#qunit-fixture" ), - webkitOrBlink = /webkit\b/i.test( navigator.userAgent ), - expected = 20; + .appendTo( "#qunit-fixture" ); - if ( webkitOrBlink ) { - expected -= 2; - } - assert.expect( expected ); + assert.expect( 20 ); div.css( "--color", "blue" ); assert.equal( div.css( "--color" ), "blue", "Modified CSS custom property using string" ); @@ -1848,13 +1843,15 @@ QUnit.testUnlessIE( "css(--customProperty)", function( assert ) { assert.equal( $elem.css( "--prop5" ), "val5", "Multiple Following whitespace trimmed" ); assert.equal( $elem.css( "--prop6" ), "val6", "Preceding and Following whitespace trimmed" ); assert.equal( $elem.css( "--prop7" ), "val7", "Multiple preceding and following whitespace trimmed" ); + assert.equal( $elem.css( "--prop8" ), "\"val8\"", "Works with double quotes" ); - // Support: Chrome <=49 - 73+, Safari <=9.1 - 12.1+ - // Chrome treats single quotes as double ones. - // Safari treats double quotes as single ones. - if ( !webkitOrBlink ) { - assert.equal( $elem.css( "--prop8" ), "\"val8\"", "Works with double quotes" ); + // Support: Safari <=9.1 - 18.1+ + // Safari converts single quotes to double ones. + if ( !/\bapplewebkit\/605\.1\.15\b/i.test( navigator.userAgent ) ) { assert.equal( $elem.css( "--prop9" ), "'val9'", "Works with single quotes" ); + } else { + assert.equal( $elem.css( "--prop9" ).replace( /"/g, "'" ), "'val9'", + "Works with single quotes, but they may be changed to double ones" ); } assert.equal( $elem.css( "--prop10" ), "val10", "Multiple preceding and following escaped unicode whitespace trimmed" ); diff --git a/test/unit/dimensions.js b/test/unit/dimensions.js index 6b0c9c798..93cdb3d82 100644 --- a/test/unit/dimensions.js +++ b/test/unit/dimensions.js @@ -345,29 +345,6 @@ QUnit.test( "child of a hidden elem (or unconnected node) has accurate inner/out $divNormal.remove(); } ); -QUnit.test( "getting dimensions shouldn't modify runtimeStyle see trac-9233", function( assert ) { - assert.expect( 1 ); - - var $div = jQuery( "
" ).appendTo( "#qunit-fixture" ), - div = $div.get( 0 ), - runtimeStyle = div.runtimeStyle; - - if ( runtimeStyle ) { - div.runtimeStyle.marginLeft = "12em"; - div.runtimeStyle.left = "11em"; - } - - $div.outerWidth( true ); - - if ( runtimeStyle ) { - assert.equal( div.runtimeStyle.left, "11em", "getting dimensions modifies runtimeStyle, see trac-9233" ); - } else { - assert.ok( true, "this browser doesn't support runtimeStyle, see trac-9233" ); - } - - $div.remove(); -} ); - QUnit.test( "table dimensions", function( assert ) { assert.expect( 2 ); diff --git a/test/unit/event.js b/test/unit/event.js index 89d48c420..474699105 100644 --- a/test/unit/event.js +++ b/test/unit/event.js @@ -1438,7 +1438,7 @@ QUnit.test( "Submit event can be stopped (trac-11049)", function( assert ) { form.remove(); } ); -// Support: iOS <=7 - 12+ +// Support: iOS <=7 - 18+ // iOS has the window.onbeforeunload field but doesn't support the beforeunload // handler making it impossible to feature-detect the support. QUnit[ /(ipad|iphone|ipod)/i.test( navigator.userAgent ) ? "skip" : "test" ]( diff --git a/test/unit/manipulation.js b/test/unit/manipulation.js index 8300b4b9c..f4941b890 100644 --- a/test/unit/manipulation.js +++ b/test/unit/manipulation.js @@ -3020,8 +3020,7 @@ QUnit.test( "Sanitized HTML doesn't get unsanitized", function( assert ) { var container, counter = 0, - oldIos = /iphone os (?:8|9|10|11|12)_/i.test( navigator.userAgent ), - assertCount = oldIos ? 12 : 13, + assertCount = 13, done = assert.async( assertCount ); assert.expect( assertCount ); @@ -3065,12 +3064,7 @@ QUnit.test( "Sanitized HTML doesn't get unsanitized", function( assert ) { test( "