servo/components/script_bindings/webidls/HTMLImageElement.webidl
Andrei Volykhin f91dc33350
html: Add the reflected 'sizes' IDL attribute for <image> (#39466)
Add the reflected 'sizes' IDL attribute for <image> element's DOM
interface which defines image sizes for different page layouts.

See https://html.spec.whatwg.org/multipage/#dom-img-sizes

Testing: Improvements in the following tests
- custom-elements/reactions/customized-builtins/HTMLImageElement.html
- html/dom/idlharness.https.html
-
html/semantics/embedded-content/the-img-element/relevant-mutations.html

Signed-off-by: Andrei Volykhin <andrei.volykhin@gmail.com>
2025-09-24 09:29:44 +00:00

62 lines
1.9 KiB
Text

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
// https://html.spec.whatwg.org/multipage/#htmlimageelement
[Exposed=Window, LegacyFactoryFunction=Image(optional unsigned long width, optional unsigned long height)]
interface HTMLImageElement : HTMLElement {
[HTMLConstructor] constructor();
[CEReactions]
attribute DOMString alt;
[CEReactions]
attribute USVString src;
[CEReactions]
attribute USVString srcset;
[CEReactions] attribute DOMString sizes;
[CEReactions]
attribute DOMString? crossOrigin;
[CEReactions]
attribute DOMString useMap;
[CEReactions]
attribute boolean isMap;
[CEReactions]
attribute unsigned long width;
[CEReactions]
attribute unsigned long height;
readonly attribute unsigned long naturalWidth;
readonly attribute unsigned long naturalHeight;
readonly attribute boolean complete;
readonly attribute USVString currentSrc;
[CEReactions]
attribute DOMString referrerPolicy;
Promise<undefined> decode();
// also has obsolete members
};
// https://html.spec.whatwg.org/multipage/#HTMLImageElement-partial
partial interface HTMLImageElement {
[CEReactions]
attribute DOMString name;
// [CEReactions]
// attribute DOMString lowsrc;
[CEReactions]
attribute DOMString align;
[CEReactions]
attribute unsigned long hspace;
[CEReactions]
attribute unsigned long vspace;
[CEReactions]
attribute DOMString longDesc;
[CEReactions]
attribute [LegacyNullToEmptyString] DOMString border;
};
// https://drafts.csswg.org/cssom-view/#extensions-to-the-htmlimageelement-interface
partial interface HTMLImageElement {
// readonly attribute long x;
// readonly attribute long y;
};