图像<区域>有哪些合理的替代方案?地图?

发布于 2024-11-16 00:48:23 字数 143 浏览 4 评论 0原文

仍然是处理不规则导航菜单的最佳方法,还是有更好的方法?

我的导航菜单如下所示:

在此处输入图像描述

Is <area> still the best way to handle irregular navigation menus, or is there a better way?

My navigation menu looks like this:

enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

姜生凉生 2024-11-23 00:48:23

您可以使用标准导航标记:

<div id="nav">
    <ul>
        <li><a class="active" href="#">Item</a></li>
        <li><a href="#">Item</a></li>
        <li><a href="#">Item</a></li>
        <li><a href="#">Item</a></li>
    </ul>
</div>

然后进行 2D CSS 转换(围绕 Y 轴倾斜元素):

#nav {
    -webkit-transform: skewY(-10deg);
    -moz-transform: skewY(-10deg);
    -ms-transform: skewY(-10deg);
    -o-transform: skewY(-10deg);
    filter: progid:DXImageTransform.Microsoft.Matrix(
        M11=1, M12=0,
        M21=-0.174532925, M22=1);
    transform: skewY(-10deg);    
}

在此处输入图像描述

请参阅此 fiddle 获取实例。有关浏览器支持信息,请参阅

如何编写 IE 过滤器

通过在 google 中输入以下内容将 -10 度转换为弧度:

-10 度转弧度

您将得到:

-10度=-0.174532925弧度

然后将值插入 M21

为什么要使用此方法

  1. 您担心页面加载时间,并且不希望再次对图像发出 HTTP 请求。
  2. 标准导航标记具有更好的语义,特别是当您切换到 HTML5 并使用屏幕阅读器用来确定导航位置的 nav 元素时。

You can use standard navigation markup:

<div id="nav">
    <ul>
        <li><a class="active" href="#">Item</a></li>
        <li><a href="#">Item</a></li>
        <li><a href="#">Item</a></li>
        <li><a href="#">Item</a></li>
    </ul>
</div>

and then do a 2D CSS transform (skew the element around the Y axis):

#nav {
    -webkit-transform: skewY(-10deg);
    -moz-transform: skewY(-10deg);
    -ms-transform: skewY(-10deg);
    -o-transform: skewY(-10deg);
    filter: progid:DXImageTransform.Microsoft.Matrix(
        M11=1, M12=0,
        M21=-0.174532925, M22=1);
    transform: skewY(-10deg);    
}

enter image description here

See this fiddle for a live example. See this for browser support info.

How to write the IE filter

Convert -10 degrees to radian by typing this in google:

-10 degrees to radian

You will get:

-10 degrees = -0.174532925 radian

Then plug the value in M21.

Why would you use this method

  1. You're concerned about page load time and you don't want another HTTP request for the image.
  2. Standard navigation markup has better semantics especially if you switch to HTML5 and use the nav element which is used by screen readers to figure out where the navigation is.
拥有 2024-11-23 00:48:23

在没有看到任何代码或任何你实际想要完成的事情的情况下,我可以含糊地说,是的。您可以使用带有 id 列表项的列表,并手动将它们放置在您的页面上。

但同样,如果没有看到你想要完成什么,就很难说。

Without seeing any code or anything of what you're actually trying to accomplish, I can say vaguely, yes. You can use lists with id'd list items and manually place them on your page.

But again, without seeing what you're trying to accomplish it's very hard to say.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文