【发布时间】:2014-07-31 04:33:33
【问题描述】:
我在 css 方面没有太多经验。但我想用html设计一个图表。我需要使用 css 设计更纤细的箭头 (link)。
我想使用图像,但我需要不同颜色的箭头。如果是的话,是否有可能通过添加透明箭头图像和动态添加颜色提供示例代码或任何其他建议也欢迎。请给我建议。
【问题讨论】:
-
你试过什么?你至少尝试过google search..?有很多问题,小提琴,教程等可以满足您的需要......
我在 css 方面没有太多经验。但我想用html设计一个图表。我需要使用 css 设计更纤细的箭头 (link)。
我想使用图像,但我需要不同颜色的箭头。如果是的话,是否有可能通过添加透明箭头图像和动态添加颜色提供示例代码或任何其他建议也欢迎。请给我建议。
【问题讨论】:
是的,有几种方法可以做到这一点。
1. 带图片
为此,请以支持透明度的文件格式创建箭头图像(我建议使用 PNG)。例如,一个带有箭头形状的白色正方形“切出”,使箭头完全透明(被白色包围)。它在 Photoshop 中可能看起来像这样;
您的 HTML 和 CSS 可能看起来像这样;
<div style="background-color: red; display: inline-block; font-size: 0;">
<img src="arrow.png";>
</div>
background-color: ---; 将确定箭头的颜色(您也可以使用十六进制值以获得更好的特异性 - 例如background-color: #CB0022;)。
display: inline-block; 是一种可能的方式来控制你的包装 DIV。没有它,您的背景颜色将延伸到其父容器的整个宽度(可能是整个页面) - 破坏您尝试创建的效果。或者,您也可以浮动 DIV,但如果您希望箭头出现在文本中间,这会使事情变得复杂。
font-size: 0; 是解决图像周围出现额外空间的常见问题的一种可能解决方案(同样,在不应该出现的地方显示不需要的背景颜色)。
2. 带有 Unicode / HTML 字符
例如,您的代码可能如下所示;
<p style="font-size: 2em;">Why don't you look over there? → →
... or down there? ↙</p>
这在浏览器中看起来像这样;
然后您可以使用<span> 标签进一步设置箭头的样式,以便独立更改它们的大小或颜色,如下所示;
<p style="font-size: 1.5em;">Why don't you look over there?
<span style="font-size: 4em; color: blue;">→</span>
<span style="font-size: 2.5em; color: darkgreen;">→</span>
... or down there? <span style="font-weight: bold; color: #CC0000;">↙</span></p>
看起来像这样;
这里的主要优点是您不会遇到与背景颜色匹配的问题,您可以更轻松地使用代码 (CSS) 更改箭头的外观。
不利的一面是,在某些情况下,使用晦涩的字符和字体可能会因多种原因导致设备之间的显示不一致,我现在不会给您带来负担。可以这么说,如果您更喜欢此解决方案,请务必在您认为合适的多台不同机器上测试您的结果。
希望对你有用。
【讨论】:
【讨论】: