javascript - 创建交互式非矩形 HTML 元素的最佳方式

标签 javascript jquery html css justinmind

enter image description here

我想为我的 HTML 页面之一创建背景,如图所示,当用户将鼠标悬停在其中一个三 Angular 形部分上时,该特定部分的不透明度会发生变化。最好的方法是什么?

最佳答案

在 SVG 中,您可以使用多边形元素在正方形内创建三 Angular 形,并且每个多边形都可以单独悬停。

.square {
  height: 400px;
  width: 400px;
  overflow: hidden;
}
svg {
  height: 100%;
  width: 100%;
}
polygon {
  fill: aliceblue;
  stroke: crimson;
  stroke-linejoin: round;
}
polygon:hover {
  fill: cornflowerblue;
}
<div class='square'>
  <svg viewBox='0 0 100 100'>
    <a xlink:href='http://google.com'>
      <polygon points='5,5 50,50 95,5' />
    </a>
    <polygon points='5,5 50,50 5,95' />
    <polygon points='5,95 50,50 95,95' />
    <polygon points='95,5 50,50 95,95' />
  </svg>
</div>

关于javascript - 创建交互式非矩形 HTML 元素的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44053909/

相关文章:

javascript - PrimeNG Autocomplete 不通过输入搜索查询显示任何建议

html - 如何修复 html 中的渲染阻塞 CSS

javascript - Marionette.CompositeView 中的 templateHelpers

javascript - 我怎样才能让这个翻滚动画的一部分连续循环?

javascript - 读取未知属性的名称

javascript - 从日期和时间字符串中删除时间

javascript - 选中时突出显示表格行

javascript - 鼠标向下旋转图像

javascript - 无法将 $_GET 回显到 JQUERY UI 模式对话框中

javascript - 为 Predict the Sky API 设置 XMLHttpRequest