我正在寻找一种仅使用css背景创建箭头的方法。
在我的情况下,这是一个选择下拉列表,因此不能使用select不支持的伪元素。
我知道如果不能使用背景,我可以使用画布来实现这一点 - Use <canvas> as a CSS background
答案 0 :(得分:5)
如果您想使用linear-gradient
,可以使用background
。
div {
width: 40px;
height: 18px;
background: linear-gradient(45deg, black 25%, transparent 25%, transparent), linear-gradient(-45deg, black 25%, transparent 25%, transparent), linear-gradient(45deg, transparent 75%, black 75%), linear-gradient(-45deg, transparent 75%, black 75%);
background-position: 20px 0;
background-size: 40px 35px;
}
<div></div>
如果您想要类似于大于或小于符号的内容,请使用svg
。
<!--'Greater than' sign-->
<svg width="40" height="50" viewBox="0 0 42 52">
<path d="M0,0 l40,25 l-40,25" fill="none" stroke="black" />
</svg>
<!--'Less than' sign-->
<svg width="40" height="50" viewBox="0 0 42 52">
<path d="M40,0 l-40,25 l40,25" fill="none" stroke="black" />
</svg>
<!--'Greater than' sign - Thick stroke-->
<svg width="40" height="50" viewBox="0 0 42 53">
<path d="M0,0 l40,25 l-40,25" fill="none" stroke="black" stroke-width="3" />
</svg>
<!--'Greater than' sign - Thick stroke-->
<svg width="40" height="50" viewBox="-2 0 42 52">
<path d="M40,0 l-40,25 l40,25" fill="none" stroke="black" stroke-width="3" />
</svg>
另外,请查看:Using svg
as a background-image
。
答案 1 :(得分:0)
您也可以使用▼字符或
<span class="caret"></span>
- 根据要求添加
<select class="form-control">
<option default disabled="disabled" >choose ▼</option>
<option>1</option>
<option>2</option>
<option>3</option>
<option>4</option>
</select>