0

为客户在视差 WordPress 网站上工作,我有一个导航栏,其中有一个精灵用于每个链接的背景图像。您可以在此处查看七个链接导航栏 ( http://www.aishla.com/blog/2014/my-aish-test/ )。现在它在桌面上看起来很棒,但我想让这些图像响应。换句话说,随着设计变小而变小。

所以我想我可以在 CSS 中使用 background-size 设置,但是当我尝试在我的媒体查询中时,我得到了 a href 中的整个精灵,而不仅仅是我想要的图像部分。所以我想知道这是否有可能以这种方式完成,或者我是否坚持为不同的屏幕分辨率创建一系列精灵。这是我用来尝试完成这项工作的示例:

首先关闭桌面版本:

nav ul.sub-nav li a { background-image: url("../aish/images/subnav.gif"); background-repeat: no-repeat; color: #000; float: left; height: auto; margin: 0; padding: 80px 0 0 0 ! important; font-size: 16px;font-weight: 700; text-transform: uppercase; text-align: center;  width: 137px; }
nav ul.sub-nav li:first-child a { background-position: 0px 0px; display: inline; }
nav ul.sub-nav li:first-child a:hover { background-position: 0px -140px; }

现在媒体查询 fior max-width 768px:

nav ul.sub-nav { float: none; width: 763px; margin: 0 auto; padding: 0; height: auto; list-style-type: none; }
nav ul.sub-nav li a { background-size: 79.562% 79.562%; padding: 80px 0 0 0 ! important; font-size: 14px; width: 109px; }
nav ul.sub-nav li:first-child a { background-position: 0px 0px; display: inline; }
4

1 回答 1

0

抱歉不能评论 - >你不能使用背景尺寸:这样你说你希望你的背景是 nav ul.sub-nav li a 宽度的 79.562% 设置为 137px 这样你的整个精灵 108px 宽,因此它看起来这么小。如果你想要漂亮的导航图标,我只会使用 .svg 图像,无论如何它们在高 DPI 屏幕上看起来会更好。

如果你想使用背景尺寸,你必须计算你的精灵适合 137px 的次数,你最终会得到 >600%,但你的精灵需要与你的 div 具有相同的比例,并且所有我不推荐以非 hdpi 图像结束的工作。

于 2014-10-03T19:19:30.650 回答