Edition for Web Developers — Last Updated 25 July 2025
Support in all current engines.
このセクションは、XMLリソースに関する規則についてのみ説明する。text/html
リソースに関する規則は、"HTML構文"と題された前述のセクションで説明される。
XML構文の使用は推奨されない。その理由としては、XMLパーサーがどのようにバイトまたは文字の文字列をDocument
オブジェクトにマッピングしなければならないかという規則を定義する仕様がないこと、XML構文が基本的にメンテナンスされていないことが挙げられる。つまり、XML構文にこれ以上の機能が追加されることは期待されていない(HTML構文にそのような機能が追加されたとしても)。
HTMLのためのXML構文は、以前に"XHTML"と呼ばれていたが、この仕様ではその用語を使用しない(他にも理由はあるが、MathMLやSVGのHTML構文にそのような用語は使用されないため)。
XML構文は、XMLのXMLおよびNamespaces in XMLで定義されている。[XML] [XMLNS]
この仕様は、XMLに対して完全に定義されるものを超えるいかなる構文レベルの要件も定義しない。
XML文書は必要に応じてDOCTYPE
が含んでもよいが、DOCTYPEはこの仕様に適合する必要はない。この仕様は、公開またはシステム識別子を定義せず、公式なDTDも提供しない。
XMLによれば、XMLプロセッサはDOCTYPEで参照される外部DTDサブセットを処理することを保証しない。たとえば、(<
、>
、&
、"
、'
を除く)実体参照が外部ファイルで定義される場合、これは、XML文書で文字に対して実体参照を使用することが危険であることを意味する。
The following styles are expected to apply to select
elements when they are being rendered as a drop-down box with base appearance:
@namespace "http://www.w3.org/1999/xhtml" ;
select {
text-transform : initial;
text-align : initial;
text-indent : initial;
background-color : transparent;
border : 1 px solid currentColor;
padding-block : 0.25 em ;
padding-inline : 0.5 em ;
min-block-size : calc-size ( auto, max ( size, 24 px , 1 lh ));
min-inline-size : calc-size ( auto, max ( size, 24 px ));
display : inline-flex;
gap : 0.5 em ;
border-radius : 0.5 em ;
user-select : none;
box-sizing : border-box;
field-sizing : content !important;
}
select > button:first-child {
all: unset;
display: contents;
}
select:enabled:hover,
select option:enabled:hover {
background-color: color-mix(in lab, currentColor 10%, transparent);
}
select:enabled:active,
select option:enabled:active {
background-color: color-mix(in lab, currentColor 20%, transparent);
}
select:disabled,
select option:disabled {
color: color-mix(in lab, currentColor 50%, transparent);
}
::picker(select) {
box-sizing: border-box;
border: 1px solid;
padding: 0;
color: CanvasText;
background-color: Canvas;
margin: 0;
inset: auto;
min-inline-size: anchor-size(self-inline);
max-block-size: stretch;
overflow: auto;
position-area: block-end span-inline-end;
position-try-order: most-block-size;
position-try-fallbacks:
block-start span-inline-end,
block-end span-inline-start,
block-start span-inline-start;
}
select option {
min-inline-size: 24px;
min-block-size: max(24px, 1lh);
padding-inline: 0.5em;
padding-block-end: 0;
display: flex;
align-items: center;
gap: 0.5em;
white-space: nowrap;
}
select option::checkmark {
content: '\2713' / '';
}
select option:not(:checked)::checkmark {
visibility: hidden;
}
select::picker-icon {
content: counter(fake-counter-name, disclosure-open);
display: block;
margin-inline-start: auto;
}
select optgroup {
font-weight: bolder;
}
select optgroup option {
font-weight: normal;
}
select optgroup legend {
padding-inline: 0.5em;
min-block-size: 1lh;
}