order
åºçº¿
广æ³å¯ç¨
èª 2015å¹´9æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
CSS 屿§ order ç¨äºè®¾ç½®å¼¹æ§æç½æ ¼å®¹å¨ä¸é¡¹çå¸å±é¡ºåºã容å¨ä¸ç项æ order å¼ååºæåï¼ç¶åæå®ä»¬çæºä»£ç é¡ºåºæåãæªæç¡®æå® order å¼ç项ä¼è¢«èµäºé»è®¤å¼ 0ã
å°è¯ä¸ä¸
order: 0;
order: 3;
order: -1;
order: 2;
<section class="default-example" id="default-example">
<div class="transition-all" id="example-element">çå 1ï¼</div>
<div style="order: 1">çå 2ï¼<code>order: 1;</code></div>
<div style="order: 2">çå 3ï¼<code>order: 2;</code></div>
<div style="order: 2">çå 4ï¼<code>order: 2;</code></div>
<div style="order: 3">çå 5ï¼<code>order: 3;</code></div>
</section>
.default-example {
max-height: 300px;
display: flex;
flex-flow: column;
}
.default-example > div {
background-color: rgb(0 0 255 / 0.2);
border: 3px solid blue;
margin: 0.5rem;
padding: 0.5rem;
flex: 1;
}
#example-element {
background-color: rgb(255 0 200 / 0.2);
border: 3px solid rebeccapurple;
}
#example-element::after {
content: attr(style);
outline: 2px dashed;
font-family: monospace;
}
å¨ä¸é¢çæ¼ç¤ºä¸ï¼è¯·éæ©å·¦ä¾§çéé¡¹æ¥æ´æ¹ç²è²çåç order 屿§å¼ãæµ
èè²ççå已被èµäºäºåºå®ç order å¼ã
请ç¢è®°æºä»£ç 顺åºçå½±åãä¾å¦ï¼å½éæ© order: 2; æ¶ï¼ç²è²çåä¼è¢«æ¾ç½®å¨ä¸¤ä¸ª order: 2; çèè²çåä¹åãè¿æ¯å ä¸ºå¨æºä»£ç ä¸ï¼ç²è²çååºç°å¨èè²çåä¹åã
è¯æ³
/* <integer> å¼ */
order: 5;
order: -5;
/* å
¨å±å¼ */
order: inherit;
order: initial;
order: revert;
order: revert-layer;
order: unset;
ç±äº order ä»
ç¨äºå½±åå
ç´ çè§è§é¡ºåºï¼èä¸å½±åå
¶é»è¾é¡ºåºæ Tab 顺åºï¼å æ¤ä¸åºå¨éè§è§åªä½ï¼ä¾å¦ speechï¼ä¸ä½¿ç¨ã
å®ä¹äº CSS æ¾ç¤ºæ¨¡åä¸çè¿ä¸å±æ§ï¼ä»
å¯¹ç½æ ¼åå¼¹æ§é¡¹äº§çå½±åãå½å¨ç¶å
ç´ ç display 屿§æªå建弹æ§å®¹å¨æç½æ ¼å®¹å¨çæ
åµä¸ï¼å¯¹åå
ç´ è®¾ç½® order 屿§æ¯æ æçã
å¼
<integer>-
表示该项æä½¿ç¨ç顺åºç»ã
æ éç¢
ä½¿ç¨ order 屿§ä¼å¯¼è´å
容çè§è§åç°ä¸ DOM 顺åºä¹é´äº§çè±èãè¿å°å¯¹åå©å±å¹é
读å¨çè¾
婿æ¯å¯¼èªçä½è§åç¨æ·é æä¸å©å½±åã妿è§è§é¡ºåºä¸ DOM 顺åºä¸ä¸è´ï¼ç¨æ·è®¿é®å
容æ¶çä½éªå°å å
¶è®¿é®æ¹å¼çä¸åèææå·®å¼ã
- å¼¹æ§çåä¸é®ç导èªçè±èââæ¥èª Tinkï¼2016ï¼
- æºä»£ç 顺åºè³å ³éè¦ââæ¥èª Adrian Roselliï¼2015ï¼
- çè§£ WCAGï¼æå 1.2 说æ
- äºè§£æåæ å 1.3.2 | W3C 对 WCAG 2.0 ççè§£
å½¢å¼å®ä¹
| åå§å¼ | 0 |
|---|---|
| éç¨å ç´ | Flex items, grid items, and absolutely-positioned flex and grid container children |
| æ¯å¦æ¯ç»§æ¿å±æ§ | å¦ |
| 计ç®å¼ | as specified |
| å¨ç»ç±»å | an integer |
å½¢å¼è¯æ³
order =
<integer>
<integer> =
<number-token>
示ä¾
>对弹æ§å®¹å¨ä¸ç项è¿è¡æåº
卿¤ç¤ºä¾ä¸ï¼æä»¬å建äºä¸ä¸ªç»å ¸çåä¾§è¾¹æ å¸å±ã
HTML
æä»¬å
å«äºé¡µçã页èå主è¦å
容åºåã主è¦å
容åºåå
å«æç« åºåå两个侧边æ ã请注æå®ä»¬ç顺åºï¼æä»¬å°ä½¿ç¨ CSS ç order 屿§æ¥æ¹åå®ä»¬çè§è§é¡ºåºã
<header>页ç</header>
<main>
<article>å
容</article>
<nav>å¯¼èªæ </nav>
<aside>ä¾§è¾¹æ </aside>
</main>
<footer>页è</footer>
CSS
æä»¬ä½¿ç¨å¼¹æ§çåå¸å±æ¨¡åçç¹æ§æ¥è®¾ç½®ä¸»åºåçæ ·å¼ï¼éè¿å° display 设置为 flexï¼<main> å
ç´ å°±åæäºä¸ä¸ªå¼¹æ§å®¹å¨ãé»è®¤æ
åµä¸ï¼è¿ä¼å建å
·æç¸ååç´é«åº¦çå¼¹æ§é¡¹ã两个侧边æ é½è¢«èµäºäºä¸ä¸ªåºå®ç widthï¼è <article> å°éè¿ flex ç®å屿§è®¾ç½®ç flex-grow å åæ¥å æ®æææ£å¯ç¨ç©ºé´ã
ç¶åï¼æä»¬å¨å¼¹æ§å®¹å¨çä¸ä¸ªåå
ç´ ä¸åå«è®¾ç½®äºä¸åç order 屿§å¼ï¼è¿æå³ç CSS å®ä¹äºç»ä»¶çè§è§é¡ºåºï¼è䏿¯æç
§ HTML ä¸å£°æçé¡ºåºæ¾ç¤ºã
main {
display: flex;
text-align: center;
}
main > article {
flex: 1;
order: 2;
}
main > nav {
width: 200px;
order: 1;
}
main > aside {
width: 200px;
order: 3;
}
ç»æ
<article> 卿ºä»£ç 顺åºä¸é¦å
åºç°ï¼ä½å¨è§è§ä¸æ¸²æå¨ä¸é´ã
è§è
| è§è |
|---|
| CSS Display Module Level 3> # order-property> |