What’s New in Safari Technology Preview 240: Key Updates and Fixes

<h2 id="introduction">Introduction</h2> <p>Apple has released Safari Technology Preview 240, the latest experimental version of its web browser, available now for macOS Tahoe and macOS Sequoia. This build introduces several improvements and resolutions across CSS, editing, forms, HTML, and media handling. If you already have Safari Technology Preview installed, you can update via <strong>System Settings > General > Software Update</strong>. The release includes WebKit changes spanning revisions 308418 to 309286.</p><figure style="margin:20px 0"><img src="https://webkit.org/wp-content/themes/webkit/images/preview-card.jpg" alt="What’s New in Safari Technology Preview 240: Key Updates and Fixes" style="width:100%;height:auto;border-radius:8px" loading="lazy"><figcaption style="font-size:12px;color:#666;margin-top:5px">Source: webkit.org</figcaption></figure> <h2 id="css">CSS Enhancements</h2> <h3 id="css-new-features">New Features</h3> <ul> <li><strong>Support for the <code>revert-rule</code> keyword</strong>: The new CSS keyword <code>revert-rule</code> allows developers to roll back the cascade as if the current style rule never existed, offering more granular control over inheritance and specificity. (308733@main)</li> </ul> <h3 id="css-fixes">Resolved Issues</h3> <ul> <li>Fixed an issue on macOS where custom CSS scrollbars were cut off and the scrollbar corner rectangle was incorrectly sized. (309119@main)</li> <li>Corrected <code>hanging-punctuation</code> to properly support apostrophe (<code>U+0027</code>) and quotation marks (<code>U+0022</code>) as hangable characters. (308597@main)</li> <li>Updated <code>hanging-punctuation</code> to allow ideographic space (<code>U+3000</code>) to hang when used as the first value. (308605@main)</li> </ul> <h2 id="editing">Editing Improvements</h2> <h3 id="editing-fixes">Resolved Issues</h3> <ul> <li>Addressed a problem where the Font Picker style selection became unusable after changing fonts while editing multiple lines. (308562@main)</li> <li>Fixed an issue where emoji images were not preserved correctly during copy-paste operations across different websites. (309176@main)</li> <li>Resolved erratic text selection that occurred when clicking absolutely-positioned content inside an element with <code>user-select: none</code>. (308451@main)</li> </ul> <h2 id="forms">Form Behavior Fixes</h2> <h3 id="forms-fixes">Resolved Issues</h3> <ul> <li>Fixed keyboard tabbing behavior: when a focused button becomes disabled, the focus no longer jumps to the beginning of the page—it now retains its logical position. (308991@main)</li> </ul> <h2 id="html">HTML Parsing Corrections</h2> <h3 id="html-fixes">Resolved Issues</h3> <ul> <li>Updated viewport <code>&lt;meta&gt;</code> parsing to treat form feed as ASCII whitespace, aligning with the HTML specification. (309044@main)</li> <li>Fixed incorrect parsing of pixel-length margin attributes on <code>&lt;body&gt;</code>, <code>&lt;iframe&gt;</code>, and <code>&lt;frame&gt;</code> elements. (308526@main)</li> </ul> <h2 id="media">Media Handling Updates</h2> <h3 id="media-fixes">Resolved Issues</h3> <ul> <li>Resolved decoding failures for WebM audio files with more than two channels. (308749@main)</li> <li>Corrected <code>MediaCapabilities.decodingInfo()</code> to no longer incorrectly report VP8 in WebM as unsupported. (308789@main)</li> <li>Fixed an issue where MP4 files containing Opus audio tracks could not be decoded using <code>decodeAudioData</code>. (309140@main)</li> <li>Addressed an issue where Live Text selection was unavailable on paused fullscreen videos. (308498@main)</li> <li>Fixed FairPlay-protected VP9 content playback via MediaSource, ensuring seamless streaming. (308622@main)</li> <li>Resolved autoplay proceeding before default text tracks finished loading, improving accessibility. (308796@main)</li> <li>Updated the <code>currentTime</code> getter to return <code>defaultPlaybackStartPosition</code> when no media player exists. (308654@main)</li> <li>Ensured <code>HTMLMediaElement</code> fires a <code>timeupdate</code> event when resetting the playback position during media load, as required by the specification. (308695@main)</li> <li>Fixed an issue where the media player <code>preload</code> attribute behaved incorrectly under certain conditions (details in the original release).</li> </ul> <h2 id="conclusion">Conclusion</h2> <p>Safari Technology Preview 240 continues Apple’s commitment to refining the web experience with a focus on standards compliance, performance, and user interface polish. Developers and enthusiasts are encouraged to download the latest build and provide feedback. For a complete list of changes, refer to the <a href="https://webkit.org/blog/">WebKit blog</a>.</p>