用纯CSS实现的箭头
用CSS即可绘制出各种箭头,无需裁剪图片,甚至没有用到CSS3的东西。对浏览器支持良好。
基本原理
原理非常简单,通过截取border(边框)的部分"拐角"实现,几行CSS代码即可理解:
一个梯形
当元素宽、高和边框的宽相近(等)时,改变某一边的颜色可以看到一个梯形;
::: {#demo11} :::
:::: {#highlighter_625101 .syntaxhighlighter .xml} ::: toolbar :::
+-------------------------------------+-----------------------------------------+
| ::: {.line .number1 .index0 .alt2}  | ::::::::::::: container                 |
| 1                                   | ::: {.line .number1 .index0 .alt2}      |
| :::                                 | <{.xml .plain}div{.xml              |
|                                     | .keyword} id{.xml .color1}={.xml    |
| ::: {.line .number2 .index1 .alt1}  | .plain}"demo11"{.xml                  |
| 2                                   | .string}></{.xml .plain}div{.xml    |
| :::                                 | .keyword}>{.xml .plain}               |
|                                     | :::                                     |
| ::: {.line .number3 .index2 .alt2}  |                                         |
| 3                                   | ::: {.line .number2 .index1 .alt1}      |
| :::                                 |                                         |
|                                     | :::                                     |
| ::: {.line .number4 .index3 .alt1}  |                                         |
| 4                                   | ::: {.line .number3 .index2 .alt2}      |
| :::                                 | <{.xml .plain}style{.xml            |
|                                     | .keyword}>{.xml .plain}               |
| ::: {.line .number5 .index4 .alt2}  | :::                                     |
| 5                                   |                                         |
| :::                                 | ::: {.line .number4 .index3 .alt1}      |
|                                     | #demo11 {{.xml .plain}                |
| ::: {.line .number6 .index5 .alt1}  | :::                                     |
| 6                                   |                                         |
| :::                                 | ::: {.line .number5 .index4 .alt2}      |
|                                     |   {.xml                               |
| ::: {.line .number7 .index6 .alt2}  | .spaces}border: 10px solid #000;{.xml |
| 7                                   | .plain}                                 |
| :::                                 | :::                                     |
|                                     |                                         |
| ::: {.line .number8 .index7 .alt1}  | ::: {.line .number6 .index5 .alt1}      |
| 8                                   |   {.xml                               |
| :::                                 | .spaces}border-left-color: #f00;{.xml |
|                                     | .plain}                                 |
| ::: {.line .number9 .index8 .alt2}  | :::                                     |
| 9                                   |                                         |
| :::                                 | ::: {.line .number7 .index6 .alt2}      |
|                                     |   {.xml .spaces}width: 10px;{.xml   |
| ::: {.line .number10 .index9 .alt1} | .plain}                                 |
| 10                                  | :::                                     |
| :::                                 |                                         |
|                                     | ::: {.line .number8 .index7 .alt1}      |
|                                     |   {.xml .spaces}height: 10px;{.xml  |
|                                     | .plain}                                 |
|                                     | :::                                     |
|                                     |                                         |
|                                     | ::: {.line .number9 .index8 .alt2}      |
|                                     | }{.xml .plain}                        |
|                                     | :::                                     |
|                                     |                                         |
|                                     | ::: {.line .number10 .index9 .alt1}     |
|                                     | </{.xml .plain}style{.xml           |
|                                     | .keyword}>{.xml .plain}               |
|                                     | :::                                     |
|                                     | :::::::::::::                           |
+-------------------------------------+-----------------------------------------+
::::
一个三角形
当元素宽、高为零,且其他边为透明颜色时,可以形一个三角形。
::: {#demo13} :::
:::: {#highlighter_215812 .syntaxhighlighter .xml} ::: toolbar :::
+-------------------------------------+-----------------------------------------+
| ::: {.line .number1 .index0 .alt2}  | ::::::::::::: container                 |
| 1                                   | ::: {.line .number1 .index0 .alt2}      |
| :::                                 | <{.xml .plain}div{.xml              |
|                                     | .keyword} id{.xml .color1}={.xml    |
| ::: {.line .number2 .index1 .alt1}  | .plain}"demo12"{.xml                  |
| 2                                   | .string}></{.xml .plain}div{.xml    |
| :::                                 | .keyword}>{.xml .plain}               |
|                                     | :::                                     |
| ::: {.line .number3 .index2 .alt2}  |                                         |
| 3                                   | ::: {.line .number2 .index1 .alt1}      |
| :::                                 |                                         |
|                                     | :::                                     |
| ::: {.line .number4 .index3 .alt1}  |                                         |
| 4                                   | ::: {.line .number3 .index2 .alt2}      |
| :::                                 | <{.xml .plain}style{.xml            |
|                                     | .keyword}>{.xml .plain}               |
| ::: {.line .number5 .index4 .alt2}  | :::                                     |
| 5                                   |                                         |
| :::                                 | ::: {.line .number4 .index3 .alt1}      |
|                                     | #demo12 {{.xml .plain}                |
| ::: {.line .number6 .index5 .alt1}  | :::                                     |
| 6                                   |                                         |
| :::                                 | ::: {.line .number5 .index4 .alt2}      |
|                                     |   {.xml                               |
| ::: {.line .number7 .index6 .alt2}  | .spaces}border: 10px solid #000;{.xml |
| 7                                   | .plain}                                 |
| :::                                 | :::                                     |
|                                     |                                         |
| ::: {.line .number8 .index7 .alt1}  | ::: {.line .number6 .index5 .alt1}      |
| 8                                   |   {.xml                               |
| :::                                 | .spaces}border-left-color: #f00;{.xml |
|                                     | .plain}                                 |
| ::: {.line .number9 .index8 .alt2}  | :::                                     |
| 9                                   |                                         |
| :::                                 | ::: {.line .number7 .index6 .alt2}      |
|                                     |   {.xml .spaces}width: 0;{.xml      |
| ::: {.line .number10 .index9 .alt1} | .plain}                                 |
| 10                                  | :::                                     |
| :::                                 |                                         |
|                                     | ::: {.line .number8 .index7 .alt1}      |
|                                     |   {.xml .spaces}height: 0;{.xml     |
|                                     | .plain}                                 |
|                                     | :::                                     |
|                                     |                                         |
|                                     | ::: {.line .number9 .index8 .alt2}      |
|                                     | }{.xml .plain}                        |
|                                     | :::                                     |
|                                     |                                         |
|                                     | ::: {.line .number10 .index9 .alt1}     |
|                                     | </{.xml .plain}style{.xml           |
|                                     | .keyword}>{.xml .plain}               |
|                                     | :::                                     |
|                                     | :::::::::::::                           |
+-------------------------------------+-----------------------------------------+
::::
任意角度的三角形
改变各个边的宽度,即通过调整"边框"厚度可以配置出任意角度
::: {#demo14} :::
:::: {#highlighter_510328 .syntaxhighlighter .xml} ::: toolbar :::
+-------------------------------------+------------------------------------------------+
| ::: {.line .number1 .index0 .alt2}  | ::::::::::::: container                        |
| 1                                   | ::: {.line .number1 .index0 .alt2}             |
| :::                                 | <{.xml .plain}div{.xml .keyword} id{.xml |
|                                     | .color1}={.xml .plain}"demo14"{.xml        |
| ::: {.line .number2 .index1 .alt1}  | .string}></{.xml .plain}div{.xml           |
| 2                                   | .keyword}>{.xml .plain}                      |
| :::                                 | :::                                            |
|                                     |                                                |
| ::: {.line .number3 .index2 .alt2}  | ::: {.line .number2 .index1 .alt1}             |
| 3                                   |                                                |
| :::                                 | :::                                            |
|                                     |                                                |
| ::: {.line .number4 .index3 .alt1}  | ::: {.line .number3 .index2 .alt2}             |
| 4                                   | <{.xml .plain}style{.xml .keyword}>{.xml |
| :::                                 | .plain}                                        |
|                                     | :::                                            |
| ::: {.line .number5 .index4 .alt2}  |                                                |
| 5                                   | ::: {.line .number4 .index3 .alt1}             |
| :::                                 | #demo14 {{.xml .plain}                       |
|                                     | :::                                            |
| ::: {.line .number6 .index5 .alt1}  |                                                |
| 6                                   | ::: {.line .number5 .index4 .alt2}             |
| :::                                 |   {.xml                                      |
|                                     | .spaces}border: 10px solid transparent;{.xml |
| ::: {.line .number7 .index6 .alt2}  | .plain}                                        |
| 7                                   | :::                                            |
| :::                                 |                                                |
|                                     | ::: {.line .number6 .index5 .alt1}             |
| ::: {.line .number8 .index7 .alt1}  |   {.xml                                      |
| 8                                   | .spaces}border-left: 20px solid #f00;{.xml   |
| :::                                 | .plain}                                        |
|                                     | :::                                            |
| ::: {.line .number9 .index8 .alt2}  |                                                |
| 9                                   | ::: {.line .number7 .index6 .alt2}             |
| :::                                 |   {.xml .spaces}width: 0;{.xml .plain}     |
|                                     | :::                                            |
| ::: {.line .number10 .index9 .alt1} |                                                |
| 10                                  | ::: {.line .number8 .index7 .alt1}             |
| :::                                 |   {.xml .spaces}height: 0px;{.xml .plain}  |
|                                     | :::                                            |
|                                     |                                                |
|                                     | ::: {.line .number9 .index8 .alt2}             |
|                                     | }{.xml .plain}                               |
|                                     | :::                                            |
|                                     |                                                |
|                                     | ::: {.line .number10 .index9 .alt1}            |
|                                     | </{.xml .plain}style{.xml                  |
|                                     | .keyword}>{.xml .plain}                      |
|                                     | :::                                            |
|                                     | :::::::::::::                                  |
+-------------------------------------+------------------------------------------------+
::::
通过伪元素实现
三角形可以通过伪元素绘制出,而无需改变原来的DOM结构
[文字内容]{#demo15}
:::: {#highlighter_614833 .syntaxhighlighter .xml} ::: toolbar :::
+--------------------------------------+------------------------------------------------+
| ::: {.line .number1 .index0 .alt2}   | :::::::::::::::::: container                   |
| 1                                    | ::: {.line .number1 .index0 .alt2}             |
| :::                                  | <{.xml .plain}span{.xml                    |
|                                      | .keyword} id{.xml .color1}={.xml           |
| ::: {.line .number2 .index1 .alt1}   | .plain}"demo15"{.xml                         |
| 2                                    | .string}>文字内容</{.xml .plain}span{.xml  |
| :::                                  | .keyword}>{.xml .plain}                      |
|                                      | :::                                            |
| ::: {.line .number3 .index2 .alt2}   |                                                |
| 3                                    | ::: {.line .number2 .index1 .alt1}             |
| :::                                  |                                                |
|                                      | :::                                            |
| ::: {.line .number4 .index3 .alt1}   |                                                |
| 4                                    | ::: {.line .number3 .index2 .alt2}             |
| :::                                  | <{.xml .plain}style{.xml .keyword}>{.xml |
|                                      | .plain}                                        |
| ::: {.line .number5 .index4 .alt2}   | :::                                            |
| 5                                    |                                                |
| :::                                  | ::: {.line .number4 .index3 .alt1}             |
|                                      | #demo15{{.xml .plain}                        |
| ::: {.line .number6 .index5 .alt1}   | :::                                            |
| 6                                    |                                                |
| :::                                  | ::: {.line .number5 .index4 .alt2}             |
|                                      |   {.xml .spaces}position: relative;{.xml   |
| ::: {.line .number7 .index6 .alt2}   | .plain}                                        |
| 7                                    | :::                                            |
| :::                                  |                                                |
|                                      | ::: {.line .number6 .index5 .alt1}             |
| ::: {.line .number8 .index7 .alt1}   | }{.xml .plain}                               |
| 8                                    | :::                                            |
| :::                                  |                                                |
|                                      | ::: {.line .number7 .index6 .alt2}             |
| ::: {.line .number9 .index8 .alt2}   | #demo15:after {{.xml .plain}                 |
| 9                                    | :::                                            |
| :::                                  |                                                |
|                                      | ::: {.line .number8 .index7 .alt1}             |
| ::: {.line .number10 .index9 .alt1}  |   {.xml                                      |
| 10                                   | .spaces}border: 10px solid transparent;{.xml |
| :::                                  | .plain}                                        |
|                                      | :::                                            |
| ::: {.line .number11 .index10 .alt2} |                                                |
| 11                                   | ::: {.line .number9 .index8 .alt2}             |
| :::                                  |   {.xml                                      |
|                                      | .spaces}border-left: 10px solid #f00;{.xml   |
| ::: {.line .number12 .index11 .alt1} | .plain}                                        |
| 12                                   | :::                                            |
| :::                                  |                                                |
|                                      | ::: {.line .number10 .index9 .alt1}            |
| ::: {.line .number13 .index12 .alt2} |   {.xml .spaces}width: 0;{.xml .plain}     |
| 13                                   | :::                                            |
| :::                                  |                                                |
|                                      | ::: {.line .number11 .index10 .alt2}           |
| ::: {.line .number14 .index13 .alt1} |   {.xml .spaces}height: 0;{.xml .plain}    |
| 14                                   | :::                                            |
| :::                                  |                                                |
|                                      | ::: {.line .number12 .index11 .alt1}           |
| ::: {.line .number15 .index14 .alt2} |   {.xml .spaces}position: absolute;{.xml   |
| 15                                   | .plain}                                        |
| :::                                  | :::                                            |
|                                      |                                                |
|                                      | ::: {.line .number13 .index12 .alt2}           |
|                                      |   {.xml .spaces}content: ' '{.xml .plain}  |
|                                      | :::                                            |
|                                      |                                                |
|                                      | ::: {.line .number14 .index13 .alt1}           |
|                                      | }{.xml .plain}                               |
|                                      | :::                                            |
|                                      |                                                |
|                                      | ::: {.line .number15 .index14 .alt2}           |
|                                      | </{.xml .plain}style{.xml                  |
|                                      | .keyword}>{.xml .plain}                      |
|                                      | :::                                            |
|                                      | ::::::::::::::::::                             |
+--------------------------------------+------------------------------------------------+
::::
伪元素实现三角线箭头
通过伪元素绘制出的两个,一个与背景色相同覆盖部分红色箭头,形成三角线
[文字内容]{#demo16}
:::: {#highlighter_803848 .syntaxhighlighter .xml} ::: toolbar :::
+--------------------------------------+------------------------------------------------+
| ::: {.line .number1 .index0 .alt2}   | ::::::::::::::::::::::::: container            |
| 1                                    | ::: {.line .number1 .index0 .alt2}             |
| :::                                  | <{.xml .plain}span{.xml                    |
|                                      | .keyword} id{.xml .color1}={.xml           |
| ::: {.line .number2 .index1 .alt1}   | .plain}"demo15"{.xml                         |
| 2                                    | .string}>文字内容</{.xml .plain}span{.xml  |
| :::                                  | .keyword}>{.xml .plain}                      |
|                                      | :::                                            |
| ::: {.line .number3 .index2 .alt2}   |                                                |
| 3                                    | ::: {.line .number2 .index1 .alt1}             |
| :::                                  |                                                |
|                                      | :::                                            |
| ::: {.line .number4 .index3 .alt1}   |                                                |
| 4                                    | ::: {.line .number3 .index2 .alt2}             |
| :::                                  | <{.xml .plain}style{.xml .keyword}>{.xml |
|                                      | .plain}                                        |
| ::: {.line .number5 .index4 .alt2}   | :::                                            |
| 5                                    |                                                |
| :::                                  | ::: {.line .number4 .index3 .alt1}             |
|                                      | #demo16{{.xml .plain}                        |
| ::: {.line .number6 .index5 .alt1}   | :::                                            |
| 6                                    |                                                |
| :::                                  | ::: {.line .number5 .index4 .alt2}             |
|                                      |   {.xml .spaces}position: relative;{.xml   |
| ::: {.line .number7 .index6 .alt2}   | .plain}                                        |
| 7                                    | :::                                            |
| :::                                  |                                                |
|                                      | ::: {.line .number6 .index5 .alt1}             |
| ::: {.line .number8 .index7 .alt1}   | }{.xml .plain}                               |
| 8                                    | :::                                            |
| :::                                  |                                                |
|                                      | ::: {.line .number7 .index6 .alt2}             |
| ::: {.line .number9 .index8 .alt2}   | #demo16:after, #demo16:before {{.xml .plain} |
| 9                                    | :::                                            |
| :::                                  |                                                |
|                                      | ::: {.line .number8 .index7 .alt1}             |
| ::: {.line .number10 .index9 .alt1}  |   {.xml                                      |
| 10                                   | .spaces}border: 10px solid transparent;{.xml |
| :::                                  | .plain}                                        |
|                                      | :::                                            |
| ::: {.line .number11 .index10 .alt2} |                                                |
| 11                                   | ::: {.line .number9 .index8 .alt2}             |
| :::                                  |   {.xml                                      |
|                                      | .spaces}border-left: 10px solid #fff;{.xml   |
| ::: {.line .number12 .index11 .alt1} | .plain}                                        |
| 12                                   | :::                                            |
| :::                                  |                                                |
|                                      | ::: {.line .number10 .index9 .alt1}            |
| ::: {.line .number13 .index12 .alt2} |   {.xml .spaces}width: 0;{.xml .plain}     |
| 13                                   | :::                                            |
| :::                                  |                                                |
|                                      | ::: {.line .number11 .index10 .alt2}           |
| ::: {.line .number14 .index13 .alt1} |   {.xml .spaces}height: 0;{.xml .plain}    |
| 14                                   | :::                                            |
| :::                                  |                                                |
|                                      | ::: {.line .number12 .index11 .alt1}           |
| ::: {.line .number15 .index14 .alt2} |   {.xml .spaces}position: absolute;{.xml   |
| 15                                   | .plain}                                        |
| :::                                  | :::                                            |
|                                      |                                                |
| ::: {.line .number16 .index15 .alt1} | ::: {.line .number13 .index12 .alt2}           |
| 16                                   |   {.xml .spaces}top: 0;{.xml .plain}       |
| :::                                  | :::                                            |
|                                      |                                                |
| ::: {.line .number17 .index16 .alt2} | ::: {.line .number14 .index13 .alt1}           |
| 17                                   |   {.xml .spaces}right: -20px;{.xml .plain} |
| :::                                  | :::                                            |
|                                      |                                                |
| ::: {.line .number18 .index17 .alt1} | ::: {.line .number15 .index14 .alt2}           |
| 18                                   |   {.xml .spaces}content: ' '{.xml .plain}  |
| :::                                  | :::                                            |
|                                      |                                                |
| ::: {.line .number19 .index18 .alt2} | ::: {.line .number16 .index15 .alt1}           |
| 19                                   | }{.xml .plain}                               |
| :::                                  | :::                                            |
|                                      |                                                |
| ::: {.line .number20 .index19 .alt1} | ::: {.line .number17 .index16 .alt2}           |
| 20                                   |                                                |
| :::                                  | :::                                            |
|                                      |                                                |
| ::: {.line .number21 .index20 .alt2} | ::: {.line .number18 .index17 .alt1}           |
| 21                                   | #demo16:before {{.xml .plain}                |
| :::                                  | :::                                            |
|                                      |                                                |
| ::: {.line .number22 .index21 .alt1} | ::: {.line .number19 .index18 .alt2}           |
| 22                                   |   {.xml                                      |
| :::                                  | .spaces}border-left-color: #f00;{.xml        |
|                                      | .plain}                                        |
|                                      | :::                                            |
|                                      |                                                |
|                                      | ::: {.line .number20 .index19 .alt1}           |
|                                      |   {.xml .spaces}right: -21px;{.xml .plain} |
|                                      | :::                                            |
|                                      |                                                |
|                                      | ::: {.line .number21 .index20 .alt2}           |
|                                      | }{.xml .plain}                               |
|                                      | :::                                            |
|                                      |                                                |
|                                      | ::: {.line .number22 .index21 .alt1}           |
|                                      | </{.xml .plain}style{.xml                  |
|                                      | .keyword}>{.xml .plain}                      |
|                                      | :::                                            |
|                                      | :::::::::::::::::::::::::                      |
+--------------------------------------+------------------------------------------------+
::::
三角线分割的Tab页
- 文字内容 Tab1
 - 文字内容 Tab2
 - 文字内容 Tab3
 
:::: {#highlighter_792288 .syntaxhighlighter .xml} ::: toolbar :::
+--------------------------------------+-----------------------------------------------------+
| ::: {.line .number1 .index0 .alt2}   | ::::::::::::::::::::::::::::::::::::::::: container |
| 1                                    | ::: {.line .number1 .index0 .alt2}                  |
| :::                                  | <{.xml .plain}ul{.xml .keyword} id{.xml       |
|                                      | .color1}={.xml .plain}"demo17"{.xml             |
| ::: {.line .number2 .index1 .alt1}   | .string}>{.xml .plain}                            |
| 2                                    | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number2 .index1 .alt1}                  |
| ::: {.line .number3 .index2 .alt2}   |   {.xml .spaces}<{.xml .plain}li{.xml         |
| 3                                    | .keyword}>文字内容 Tab1</{.xml .plain}li{.xml   |
| :::                                  | .keyword}>{.xml .plain}                           |
|                                      | :::                                                 |
| ::: {.line .number4 .index3 .alt1}   |                                                     |
| 4                                    | ::: {.line .number3 .index2 .alt2}                  |
| :::                                  |   {.xml .spaces}<{.xml .plain}li{.xml         |
|                                      | .keyword}>文字内容 Tab2</{.xml .plain}li{.xml   |
| ::: {.line .number5 .index4 .alt2}   | .keyword}>{.xml .plain}                           |
| 5                                    | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number4 .index3 .alt1}                  |
| ::: {.line .number6 .index5 .alt1}   |   {.xml .spaces}<{.xml .plain}li{.xml         |
| 6                                    | .keyword}>文字内容 Tab3</{.xml .plain}li{.xml   |
| :::                                  | .keyword}>{.xml .plain}                           |
|                                      | :::                                                 |
| ::: {.line .number7 .index6 .alt2}   |                                                     |
| 7                                    | ::: {.line .number5 .index4 .alt2}                  |
| :::                                  | </{.xml .plain}ul{.xml .keyword}>{.xml        |
|                                      | .plain}                                             |
| ::: {.line .number8 .index7 .alt1}   | :::                                                 |
| 8                                    |                                                     |
| :::                                  | ::: {.line .number6 .index5 .alt1}                  |
|                                      |                                                     |
| ::: {.line .number9 .index8 .alt2}   | :::                                                 |
| 9                                    |                                                     |
| :::                                  | ::: {.line .number7 .index6 .alt2}                  |
|                                      | <{.xml .plain}style{.xml .keyword}>{.xml      |
| ::: {.line .number10 .index9 .alt1}  | .plain}                                             |
| 10                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number8 .index7 .alt1}                  |
| ::: {.line .number11 .index10 .alt2} | #demo17{{.xml .plain}                             |
| 11                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number9 .index8 .alt2}                  |
| ::: {.line .number12 .index11 .alt1} |   {.xml .spaces}font-size: 10px;{.xml .plain}   |
| 12                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number10 .index9 .alt1}                 |
| ::: {.line .number13 .index12 .alt2} |   {.xml .spaces}height: 24px;{.xml .plain}      |
| 13                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number11 .index10 .alt2}                |
| ::: {.line .number14 .index13 .alt1} | }{.xml .plain}                                    |
| 14                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number12 .index11 .alt1}                |
| ::: {.line .number15 .index14 .alt2} |                                                     |
| 15                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number13 .index12 .alt2}                |
| ::: {.line .number16 .index15 .alt1} | #demo17 li {{.xml .plain}                         |
| 16                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number14 .index13 .alt1}                |
| ::: {.line .number17 .index16 .alt2} |   {.xml .spaces}float: left;{.xml .plain}       |
| 17                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number15 .index14 .alt2}                |
| ::: {.line .number18 .index17 .alt1} |   {.xml .spaces}position: relative;{.xml        |
| 18                                   | .plain}                                             |
| :::                                  | :::                                                 |
|                                      |                                                     |
| ::: {.line .number19 .index18 .alt2} | ::: {.line .number16 .index15 .alt1}                |
| 19                                   |   {.xml .spaces}list-style: none;{.xml .plain}  |
| :::                                  | :::                                                 |
|                                      |                                                     |
| ::: {.line .number20 .index19 .alt1} | ::: {.line .number17 .index16 .alt2}                |
| 20                                   |   {.xml .spaces}margin: 0 20px 12px -19px;{.xml |
| :::                                  | .plain}                                             |
|                                      | :::                                                 |
| ::: {.line .number21 .index20 .alt2} |                                                     |
| 21                                   | ::: {.line .number18 .index17 .alt1}                |
| :::                                  |   {.xml                                           |
|                                      | .spaces}border-top: solid 1px #ddd;{.xml .plain}  |
| ::: {.line .number22 .index21 .alt1} | :::                                                 |
| 22                                   |                                                     |
| :::                                  | ::: {.line .number19 .index18 .alt2}                |
|                                      |   {.xml                                           |
| ::: {.line .number23 .index22 .alt2} | .spaces}border-bottom: solid 1px #ddd;{.xml       |
| 23                                   | .plain}                                             |
| :::                                  | :::                                                 |
|                                      |                                                     |
| ::: {.line .number24 .index23 .alt1} | ::: {.line .number20 .index19 .alt1}                |
| 24                                   |   {.xml .spaces}padding-left: 12px;{.xml        |
| :::                                  | .plain}                                             |
|                                      | :::                                                 |
| ::: {.line .number25 .index24 .alt2} |                                                     |
| 25                                   | ::: {.line .number21 .index20 .alt2}                |
| :::                                  | }{.xml .plain}                                    |
|                                      | :::                                                 |
| ::: {.line .number26 .index25 .alt1} |                                                     |
| 26                                   | ::: {.line .number22 .index21 .alt1}                |
| :::                                  |                                                     |
|                                      | :::                                                 |
| ::: {.line .number27 .index26 .alt2} |                                                     |
| 27                                   | ::: {.line .number23 .index22 .alt2}                |
| :::                                  | #demo17 li:after, #demo17 li:before {{.xml        |
|                                      | .plain}                                             |
| ::: {.line .number28 .index27 .alt1} | :::                                                 |
| 28                                   |                                                     |
| :::                                  | ::: {.line .number24 .index23 .alt1}                |
|                                      |   {.xml                                           |
| ::: {.line .number29 .index28 .alt2} | .spaces}border: 10px solid transparent;{.xml      |
| 29                                   | .plain}                                             |
| :::                                  | :::                                                 |
|                                      |                                                     |
| ::: {.line .number30 .index29 .alt1} | ::: {.line .number25 .index24 .alt2}                |
| 30                                   |   {.xml                                           |
| :::                                  | .spaces}border-left: 10px solid #fff;{.xml        |
|                                      | .plain}                                             |
| ::: {.line .number31 .index30 .alt2} | :::                                                 |
| 31                                   |                                                     |
| :::                                  | ::: {.line .number26 .index25 .alt1}                |
|                                      |   {.xml .spaces}width: 0;{.xml .plain}          |
| ::: {.line .number32 .index31 .alt1} | :::                                                 |
| 32                                   |                                                     |
| :::                                  | ::: {.line .number27 .index26 .alt2}                |
|                                      |   {.xml .spaces}height: 0;{.xml .plain}         |
| ::: {.line .number33 .index32 .alt2} | :::                                                 |
| 33                                   |                                                     |
| :::                                  | ::: {.line .number28 .index27 .alt1}                |
|                                      |   {.xml .spaces}position: absolute;{.xml        |
| ::: {.line .number34 .index33 .alt1} | .plain}                                             |
| 34                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number29 .index28 .alt2}                |
| ::: {.line .number35 .index34 .alt2} |   {.xml .spaces}top: 0;{.xml .plain}            |
| 35                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number30 .index29 .alt1}                |
| ::: {.line .number36 .index35 .alt1} |   {.xml .spaces}right: -18px;{.xml .plain}      |
| 36                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number31 .index30 .alt2}                |
| ::: {.line .number37 .index36 .alt2} |   {.xml .spaces}content: ' '{.xml .plain}       |
| 37                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number32 .index31 .alt1}                |
| ::: {.line .number38 .index37 .alt1} | }{.xml .plain}                                    |
| 38                                   | :::                                                 |
| :::                                  |                                                     |
|                                      | ::: {.line .number33 .index32 .alt2}                |
|                                      |                                                     |
|                                      | :::                                                 |
|                                      |                                                     |
|                                      | ::: {.line .number34 .index33 .alt1}                |
|                                      | #demo17 li:before {{.xml .plain}                  |
|                                      | :::                                                 |
|                                      |                                                     |
|                                      | ::: {.line .number35 .index34 .alt2}                |
|                                      |   {.xml .spaces}border-left-color: #ddd;{.xml   |
|                                      | .plain}                                             |
|                                      | :::                                                 |
|                                      |                                                     |
|                                      | ::: {.line .number36 .index35 .alt1}                |
|                                      |   {.xml .spaces}right: -19px;{.xml .plain}      |
|                                      | :::                                                 |
|                                      |                                                     |
|                                      | ::: {.line .number37 .index36 .alt2}                |
|                                      | }{.xml .plain}                                    |
|                                      | :::                                                 |
|                                      |                                                     |
|                                      | ::: {.line .number38 .index37 .alt1}                |
|                                      | </{.xml .plain}style{.xml .keyword}>{.xml     |
|                                      | .plain}                                             |
|                                      | :::                                                 |
|                                      | :::::::::::::::::::::::::::::::::::::::::           |
+--------------------------------------+-----------------------------------------------------+
::::
三角形跟矩形组合成提示框
这里还有另一种效果,使用三角形跟矩形组合成提示框,代码来自这篇文章:[ ]{.Apple-converted-space}Css arrows and shapes without markup{target="_blank"}
::: {#demo} :::
\
:::: {#highlighter_357092 .syntaxhighlighter .xml} ::: toolbar :::
+--------------------------------------+-----------------------------------------------+
| ::: {.line .number1 .index0 .alt2}   | ::::::::::::::::::::::::::::::::::: container |
| 1                                    | ::: {.line .number1 .index0 .alt2}            |
| :::                                  | <{.xml .plain}div{.xml                    |
|                                      | .keyword} id{.xml .color1}={.xml          |
| ::: {.line .number2 .index1 .alt1}   | .plain}"demo"{.xml .string}></{.xml       |
| 2                                    | .plain}div{.xml .keyword}>{.xml .plain}   |
| :::                                  | :::                                           |
|                                      |                                               |
| ::: {.line .number3 .index2 .alt2}   | ::: {.line .number2 .index1 .alt1}            |
| 3                                    |                                               |
| :::                                  | :::                                           |
|                                      |                                               |
| ::: {.line .number4 .index3 .alt1}   | ::: {.line .number3 .index2 .alt2}            |
| 4                                    | <{.xml .plain}style{.xml                  |
| :::                                  | .keyword}>{.xml .plain}                     |
|                                      | :::                                           |
| ::: {.line .number5 .index4 .alt2}   |                                               |
| 5                                    | ::: {.line .number4 .index3 .alt1}            |
| :::                                  | #demo {{.xml .plain}                        |
|                                      | :::                                           |
| ::: {.line .number6 .index5 .alt1}   |                                               |
| 6                                    | ::: {.line .number5 .index4 .alt2}            |
| :::                                  |   {.xml .spaces}width: 100px;{.xml        |
|                                      | .plain}                                       |
| ::: {.line .number7 .index6 .alt2}   | :::                                           |
| 7                                    |                                               |
| :::                                  | ::: {.line .number6 .index5 .alt1}            |
|                                      |   {.xml .spaces}height: 100px;{.xml       |
| ::: {.line .number8 .index7 .alt1}   | .plain}                                       |
| 8                                    | :::                                           |
| :::                                  |                                               |
|                                      | ::: {.line .number7 .index6 .alt2}            |
| ::: {.line .number9 .index8 .alt2}   |   {.xml                                     |
| 9                                    | .spaces}background-color: #ccc;{.xml        |
| :::                                  | .plain}                                       |
|                                      | :::                                           |
| ::: {.line .number10 .index9 .alt1}  |                                               |
| 10                                   | ::: {.line .number8 .index7 .alt1}            |
| :::                                  |   {.xml .spaces}position: relative;{.xml  |
|                                      | .plain}                                       |
| ::: {.line .number11 .index10 .alt2} | :::                                           |
| 11                                   |                                               |
| :::                                  | ::: {.line .number9 .index8 .alt2}            |
|                                      |   {.xml                                     |
| ::: {.line .number12 .index11 .alt1} | .spaces}border: 4px solid #333;{.xml        |
| 12                                   | .plain}                                       |
| :::                                  | :::                                           |
|                                      |                                               |
| ::: {.line .number13 .index12 .alt2} | ::: {.line .number10 .index9 .alt1}           |
| 13                                   | }{.xml .plain}                              |
| :::                                  | :::                                           |
|                                      |                                               |
| ::: {.line .number14 .index13 .alt1} | ::: {.line .number11 .index10 .alt2}          |
| 14                                   |                                               |
| :::                                  | :::                                           |
|                                      |                                               |
| ::: {.line .number15 .index14 .alt2} | ::: {.line .number12 .index11 .alt1}          |
| 15                                   | #demo:after, #demo:before {{.xml .plain}    |
| :::                                  | :::                                           |
|                                      |                                               |
| ::: {.line .number16 .index15 .alt1} | ::: {.line .number13 .index12 .alt2}          |
| 16                                   |   {.xml                                     |
| :::                                  | .spaces}border: solid transparent;{.xml     |
|                                      | .plain}                                       |
| ::: {.line .number17 .index16 .alt2} | :::                                           |
| 17                                   |                                               |
| :::                                  | ::: {.line .number14 .index13 .alt1}          |
|                                      |   {.xml .spaces}content: ' ';{.xml        |
| ::: {.line .number18 .index17 .alt1} | .plain}                                       |
| 18                                   | :::                                           |
| :::                                  |                                               |
|                                      | ::: {.line .number15 .index14 .alt2}          |
| ::: {.line .number19 .index18 .alt2} |   {.xml .spaces}height: 0;{.xml .plain}   |
| 19                                   | :::                                           |
| :::                                  |                                               |
|                                      | ::: {.line .number16 .index15 .alt1}          |
| ::: {.line .number20 .index19 .alt1} |   {.xml .spaces}left: 100%;{.xml .plain}  |
| 20                                   | :::                                           |
| :::                                  |                                               |
|                                      | ::: {.line .number17 .index16 .alt2}          |
| ::: {.line .number21 .index20 .alt2} |   {.xml .spaces}position: absolute;{.xml  |
| 21                                   | .plain}                                       |
| :::                                  | :::                                           |
|                                      |                                               |
| ::: {.line .number22 .index21 .alt1} | ::: {.line .number18 .index17 .alt1}          |
| 22                                   |   {.xml .spaces}width: 0;{.xml .plain}    |
| :::                                  | :::                                           |
|                                      |                                               |
| ::: {.line .number23 .index22 .alt2} | ::: {.line .number19 .index18 .alt2}          |
| 23                                   | }{.xml .plain}                              |
| :::                                  | :::                                           |
|                                      |                                               |
| ::: {.line .number24 .index23 .alt1} | ::: {.line .number20 .index19 .alt1}          |
| 24                                   |                                               |
| :::                                  | :::                                           |
|                                      |                                               |
| ::: {.line .number25 .index24 .alt2} | ::: {.line .number21 .index20 .alt2}          |
| 25                                   | #demo:after {{.xml .plain}                  |
| :::                                  | :::                                           |
|                                      |                                               |
| ::: {.line .number26 .index25 .alt1} | ::: {.line .number22 .index21 .alt1}          |
| 26                                   |   {.xml .spaces}border-width: 9px;{.xml   |
| :::                                  | .plain}                                       |
|                                      | :::                                           |
| ::: {.line .number27 .index26 .alt2} |                                               |
| 27                                   | ::: {.line .number23 .index22 .alt2}          |
| :::                                  |   {.xml                                     |
|                                      | .spaces}border-left-color: #ccc;{.xml       |
| ::: {.line .number28 .index27 .alt1} | .plain}                                       |
| 28                                   | :::                                           |
| :::                                  |                                               |
|                                      | ::: {.line .number24 .index23 .alt1}          |
| ::: {.line .number29 .index28 .alt2} |   {.xml .spaces}top: 15px;{.xml .plain}   |
| 29                                   | :::                                           |
| :::                                  |                                               |
|                                      | ::: {.line .number25 .index24 .alt2}          |
| ::: {.line .number30 .index29 .alt1} | }{.xml .plain}                              |
| 30                                   | :::                                           |
| :::                                  |                                               |
|                                      | ::: {.line .number26 .index25 .alt1}          |
| ::: {.line .number31 .index30 .alt2} |                                               |
| 31                                   | :::                                           |
| :::                                  |                                               |
|                                      | ::: {.line .number27 .index26 .alt2}          |
| ::: {.line .number32 .index31 .alt1} | #demo:before {{.xml .plain}                 |
| 32                                   | :::                                           |
| :::                                  |                                               |
|                                      | ::: {.line .number28 .index27 .alt1}          |
|                                      |   {.xml .spaces}border-width: 14px;{.xml  |
|                                      | .plain}                                       |
|                                      | :::                                           |
|                                      |                                               |
|                                      | ::: {.line .number29 .index28 .alt2}          |
|                                      |   {.xml                                     |
|                                      | .spaces}border-left-color: #333;{.xml       |
|                                      | .plain}                                       |
|                                      | :::                                           |
|                                      |                                               |
|                                      | ::: {.line .number30 .index29 .alt1}          |
|                                      |   {.xml .spaces}top: 10px;{.xml .plain}   |
|                                      | :::                                           |
|                                      |                                               |
|                                      | ::: {.line .number31 .index30 .alt2}          |
|                                      | }{.xml .plain}                              |
|                                      | :::                                           |
|                                      |                                               |
|                                      | ::: {.line .number32 .index31 .alt1}          |
|                                      | </{.xml .plain}style{.xml                 |
|                                      | .keyword}>{.xml .plain}                     |
|                                      | :::                                           |
|                                      | :::::::::::::::::::::::::::::::::::           |
+--------------------------------------+-----------------------------------------------+
::::
本文作者:newghost
原文地址:http://ourjs.com/detail/532bc9f36922aa7e1d000001