Web platform features explorer

📃 October 2007 release notes

New in Safari

The following features are now available in Safari:

  • Accessor methods: The __defineGetter__() and __defineSetter__() methods of objects bind a function to a property, which is called on setting or reading the property.
  • BarProp: The visible property of the window.locationbar, window.menubar, window.personalbar, window.scrollbars, window.statusbar, and window.toolbar APIs historically represented the visibility of a browser user interface. For privacy reasons, it now represents whether the window is a pop-up.
  • <base>: The <base> element sets the base URL (the URL that relative URLs are relative to) for all relative URLs in the document.
  • Beforeunload: The beforeunload event is fired when the current window is about to be unloaded. Typically this is used to display a dialog to confirm if users really want to leave the page when there is unsaved data that would be lost.
  • <body>: The <body> element represents the content of an HTML document.
  • <br>: The <br> element produces line breaks in text.
  • Change event: The change event for <input>, <select>, and <textarea> elements fires when the user modifies the element's value. Unlike the input event, the change event does not necessarily fire on every alteration to an element's value.
  • Console: The console API logs debugging messages to the browser development tools' console.
  • Counters (CSS): The counter-reset and counter-increment CSS properties and the counter() and counters() functions automatically number headings or ordered list items.
  • Device media queries: The device-aspect-ratio, device-height, and device-width media features describe physical properties of the displaying output device.
  • <form>: The <form> element contains interactive controls for submitting information.
  • Function caller and arguments: The caller and arguments properties of a non-strict mode Function object are the function that called it and the arguments it was called with. Not to be confused with the arguments variable in a function body's local scope.
  • <h1> through <h6>: The <h1> through <h6> HTML elements represent six levels of section headings, in order of decreasing importance.
  • <hr>: The <hr> element represents a thematic break between paragraphs, often shown as a horizontal rule.
  • <input type="checkbox">: The <input type="checkbox"> HTML element represents a tickable box with two states, checked and unchecked.
  • Media queries: The @media CSS rule conditionally applies styles based on the output device type, its capabilities, and the user's preferences. Media queries are composed of an optional media type such as screen or print, and one or more mandatory media features, such as prefers-reduced-animations.
  • <menu>: The <menu> element represents an unordered list of action items (<li>), such as a toolbar. It is a semantic alternative to the <ul> element.
  • <object>: The <object> element represents an external resource such as a PDF or SVG document. It was historically used for plugins such as Shockwave Flash.
  • <p>: The <p> element represents a paragraph of text.
  • __proto__: The __proto__ property of objects partially exposes the prototype of an object.
  • <q>: The <q> element represents a short inline quotation.
  • RegExp static properties: The RegExp object has several static properties to access the input and results of the most-recent regular expression match.
  • resolution media query (compatibility prefixes): The -webkit-device-pixel-ratio, -webkit-min-device-pixel-ratio, and -webkit-max-device-pixel-ratio CSS media queries are standardized compatibility alternatives to resolution media queries.
  • <script> and <noscript>: The <script> element contains or loads data or executable code. This is typically used to load JavaScript code. The <noscript> element represents alternative content to show when scripting is not allowed.
  • Selectors (core): CSS selectors match elements based on their type, attributes, and relationship to other elements. They define the specific elements to which a block of styles will be applied. This feature represents the oldest selectors of CSS.
  • SVG: The SVG image format, represented by the <svg> element, creates two-dimensional vector graphics with declarative or scripted interaction and animation.
  • Text stroke and fill (compatibility prefixes): The -webkit-text-stroke-width and -webkit-text-stroke-color CSS properties set the thickness and color of text outlines. The -webkit-text-fill-color sets the color within text character outlines. Both default to the text color.
  • word-break: break-word: The word-break: break-word CSS declaration sets word breaks to occur according to their customary rules. Superseded by overflow-wrap: anywhere.
  • XMLHttpRequest: The XMLHttpRequest API makes HTTP requests. It's the predecessor to fetch(). Also known as XHR.
  • XMLSerializer: The XMLSerializer API provides the serializeToString() method to construct an XML string representing a DOM tree.
  • XPath: The document.evaluate() method selects elements in an HTML or XML document based on an expression of XPath, a domain specific language for querying XML documents. Also known as XML Path Language.