CSS三角箭頭應(yīng)用實(shí)踐

用CSS來制作無圖片帶箭頭的DIV方框(此代碼比較適合追求純代碼者)
這類效果也可以用圖片背景來實(shí)現(xiàn),代碼會(huì)更簡(jiǎn)潔
CSS代碼:
- div.container{position:absolute;
- top:30px;
- left:40px;
- font-size: 9pt;
- display:block;
- height:100px;
- width:200px;
- background-color:transparent;
- *border:1px solid #666;
- }
- s{
- position:absolute;
- top:-20px;
- *top:-22px;
- left:20px;
- display:block;
- height:0;
- width:0;
- font-size: 0;
- line-height: 0;
- border-color:transparent transparent #666 transparent;
- border-style:dashed dashed solid dashed;
- border-width:10px;
- }
- i{position:absolute;
- top:-9px;
- *top:-9px;
- left:-10px;
- display:block;
- height:0;
- width:0;
- font-size: 0;
- line-height: 0;
- border-color:transparent transparent #fff transparent;
- border-style:dashed dashed solid dashed;
- border-width:10px;
- }
- .content{
- border:1px solid #666;
- -moz-border-radius:3px;
- -webkit-border-radius:3px;
- position:absolute;
- background-color:#fff;
- width:100%;
- height:100%;
- padding:5px;
- *top:-2px;
- *border-top:1px solid #666;
- *border-top:1px solid #666;
- *border-left:none;
- *border-right:none;
- *height:102px;
- box-shadow: 3px 3px 4px #999;
- -moz-box-shadow: 3px 3px 4px #999;
- -webkit-box-shadow: 3px 3px 4px #999;
- /* For IE 5.5 - 7 */
- filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#999999');
- /* For IE 8 */
- -ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#999999')";
- }
HTML代碼:
- <div class="container">
- <div class="content">
- <br>這是框中的文字,可動(dòng)態(tài)顯示。高度自動(dòng)增加,應(yīng)該不錯(cuò)吧^_^
- </div>
- <s>
- <i></i>
- </s>
- </div>
效果圖:
這次介紹下CSS制作三角箭頭
通常,我們做上圖那個(gè)三角形,一般都是做張圖,而且需要兩張,因?yàn)橐话愣际窍吕藛蔚男Ч枰袀€(gè)hover的樣式,箭頭是反的。那是不是有更好的辦法呢,畢竟要用兩張圖片來解決這么一個(gè)小問題太浪費(fèi)資源了,于是,下面我要用純CSS的方法來解決這一問題,用到的只需css的一個(gè)屬性,就是border-width
我們先來看個(gè)樣式,如果設(shè)置元素邊框,會(huì)怎么樣:
似乎看不出什么,讓我給四個(gè)邊框加上不同的顏色吧再看看吧:
是不是發(fā)現(xiàn)了些什么?對(duì),讓我們把中間的文字去掉吧:
這樣,就出現(xiàn)4個(gè)三角形了,然后我們?nèi)绻枰敳磕莻€(gè)三角形,只需要將border的left、right、bottom設(shè)置成背景色就行了:
這樣,我們需要的三角形就出現(xiàn)了,并且可以設(shè)置4個(gè)不同方向的了:
樣式代碼很簡(jiǎn)單,就幾句話:
- float: left;
- border-style: solid; border-width: 10px;
- border-color: #000 #ccc #ccc #ccc;
- height: 0;
- width: 0;
- font-size: 0;
實(shí)際應(yīng)用
比如我們要使用向下的箭頭(兼容IE6寫法)
HTML代碼:
- <div class="demo"><span class="bottom-arrow"></span></div>
CSS代碼:
- .demo{position:relative}
- .bottombottom-arrow{
- position:absolute;
- top:10px;
- left:0px;
- border-style:solid;
- border-width:100px;
- border-color:#000000 transparent transparent transparent;/*上邊框設(shè)置想要的顏色*/
- height:0;
- width:0;
- font-size:0;
- _border-color:#000000 tomato tomato tomato ; /*邊框透明色 For IE6-*/
- _filter:chroma(color=tomato);/*邊框透明色 For IE6-*/
- }
說明:
這里的演示是用了邊框透明色,如果你用不到透明的話,直接設(shè)置border-color為你需要的顏色就可以了,免去為了兼容IE6的透明邊框?yàn)V鏡寫法
Chroma屬性可以設(shè)置一個(gè)對(duì)象中指定的顏色為透明色,它的表達(dá)式如下:
- Filter:Chroma(color=color)
這個(gè)屬性的表達(dá)式是不是很簡(jiǎn)單,它只有一個(gè)參數(shù)。只需把您想要指定透明的顏色用Color參數(shù)設(shè)置出來就可以了。
相關(guān)文章
- 本篇文章主要介紹了CSS3 用border寫 空心三角箭頭 (兩種寫法),非常具有實(shí)用價(jià)值,需要的朋友可以參考下2017-09-29
- 本文給大家介紹css代碼去掉select的下拉箭頭樣式的方法,代碼簡(jiǎn)單易懂,需要的朋友可以參考下2016-09-02
- 這篇文章主要為大家詳細(xì)介紹了純CSS繪制三角形箭頭圖案技術(shù),如何使用:before和:after繪制CSS三角形,感興趣的小伙伴們可以參考一下2016-06-28
- css3功能非常強(qiáng)大,之前需要圖片完成的icon,現(xiàn)在我們只需要幾段css代碼就可以實(shí)現(xiàn)此功能。下面給大家分享純css制作的圓,橢圓,三角形箭頭圖標(biāo),非常使用,需要的朋友參考2016-03-30
- 這篇文章主要為大家介紹了仿新浪微博箭頭的css寫法,涉及字體與樣式的實(shí)現(xiàn)方法,是非常簡(jiǎn)單實(shí)用的css技巧,需要的朋友可以參考下2014-12-13
- 最近我想修改一下這個(gè)網(wǎng)站,我想在上面放置一個(gè)提示框。這是很容易,但我想讓提示框上有一個(gè)三角形的箭頭??墒?,一想到這需要使用圖片,并且各種顏色,各種方向的箭頭要準(zhǔn)2014-05-07
純CSS實(shí)現(xiàn)箭頭、氣泡讓提示功能具有三角形圖標(biāo)
準(zhǔn)備添加tooltips提示信息效果.實(shí)現(xiàn)很容易,但我想要讓提示功能具有三角形的指示圖標(biāo),本文兩種實(shí)現(xiàn)方式: 使用或不使用 before 和 :after 偽元素,示例如下,有此需求的朋2013-08-09- 之前做箭頭一直都是用圖片,也嘗試過用新浪微博用的那種特殊符號(hào)“◆”,不過寬高,三角形的大小等都不太好控制,后來發(fā)現(xiàn)可以直接用css繪制,非css3,使用常規(guī)的border進(jìn)2012-06-27
- CSS模擬小箭頭的實(shí)現(xiàn)代碼,需要的朋友可以參考下。2012-01-21
使用css實(shí)現(xiàn)任意大小、任意方向和任意角度的箭頭示例
這篇文章主要介紹了使用css實(shí)現(xiàn)任意大小、任意方向和任意角度的箭頭示例的相關(guān)資料,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-03-05