用css制作一个三角形箭头

用css制作一个三角形箭头

  通常,我们做上图那个三角形,一般都是做张图,而且需要两张,因为一般都是下拉菜单的效果,需要有个hover的样式,箭头是反的。那是不是有更好的办法呢,毕竟要用两张图片来解决这么一个小问题太浪费资源了,于是,下面我要用一个剑走偏锋的方法来解决这一问题,用到的只需css的一个属性,就是border-width

  我们先来看个样式,如果设置元素边框,会怎么样:

test

  似乎看不出什么,让我给四个边框加上不同的颜色吧再看看吧:

test

  是不是发现了些什么?对,让我们把中间的文字去掉吧:

 

  这样,就出现4个三角形了,然后我们如果需要顶部那个三角形,只需要将border的left、right、bottom设置成背景色就行了:

 

  这样,我们需要的三角形就出现了,并且可以设置4个不同方向的了:

    

  样式代码很简单,就几句话:

<strong style="float:left; border-style:solid; border-width:10px; border-color:#000 #ccc #ccc #ccc; height:0; width:0; font-size:0"></strong>

  东西很简单,但很想到用border边框来制作三角形箭头确实有点剑走偏锋了,用的相当巧妙。

上一篇:JS中的call()(转)


下一篇:记录ASP.NET页面表单初始状态(主要是为了前台可以根据这个判断页面是否变动了)