html/css - 使用带有 <img> 标签的精灵 - 如何在 Chrome 中删除轮廓?

Posted

技术标签:

【中文标题】html/css - 使用带有 <img> 标签的精灵 - 如何在 Chrome 中删除轮廓?【英文标题】:html/css - using sprite with <img> tag - how to remove the outline in Chrome? 【发布时间】:2011-12-19 22:38:01 【问题描述】:

我正在重做一个使用 CSS 精灵的网站。我也在使用带有一些标签的精灵,我无法删除这些标签。

所以标签获得了 CSS-background-image 和适当的背景位置。工作正常。我不得不删除 alt 属性,因为它一直显示在 Firefox 上。不太好,但还可以。

我的问题: 在 Chrome 中,我最终在图像周围有一个微弱的轮廓。我首先认为这些是边界,但我认为它是轮廓。

如果我 CSS outline: 3px solid blue 微弱的边框,变成 3px 纯蓝色...但如果我设置 outline: 0; 没有任何反应。

更多代码: html

<img class="ui-li-icon ui-li-thumb iconComments" />

CSS

.ui-icon, .iconComments, .iconMail, .ui-icon-searchfield:after 
    background:  #FFFFFF  /*global-icon-color*/;
    background:  transparent  /*global-icon-disc*/;
    background-image:  url(img/sprite.png)  /*global-icon-set*/;
    background-repeat: no-repeat;
    -moz-border-radius:  9px;
    -webkit-border-radius: 9px;
    border-radius: 9px;
     
.iconComments 
background-position:    -36px 50%;
    
.iconMail 
background-position:     2px 50%;
    
.iconComments, .iconMail 
height: 20px; 
width: 20px;
    

任何想法,轮廓/边框来自哪里以及如何删除它?

谢谢

【问题讨论】:

你试过outline: none 吗? 您确实意识到图像上的srcalt 属性是必需的 图像只是菜单项前面的小徽标。我在 Stack Overflow 上找到了另一篇文章,我正在尝试关注 ***.com/questions/4335957/using-sprites-with-img-tag @frequent:您绝对应该为这些图像使用跨度。我认为你对这个答案所说的“语义意义”感到困惑。菜单项前面的图标没有语义意义,它是装饰性的。段落上下文中的图像具有语义含义。 @frequent 顺便说一句,如果你可以绝对定位图像,你可以使用 CSS clip 属性直接在前景中使用精灵。 【参考方案1】:

此问题可能是由于您的图像标签中没有 src 属性。

【讨论】:

噗。那是很久以前的事了……我剪了这个。【参考方案2】:

如果您可以绝对定位图像,则可以使用 CSS clip 属性直接在前景中使用精灵。

【讨论】:

只是为了添加更多信息。虽然这在 IE7+、FF、Chrome、Safari 和 ios 上运行良好,但在 android 上却不行。【参考方案3】:

这通常是由边框属性引起的。我知道你说你认为它是大纲,但你有没有在你的 img 课上尝试过这个......

.imgClass
 
border-style: none; 
text-decoration: none; 
 

或者这个

.imgClass

border:0;

【讨论】:

抱歉,没用。我只是用 替换了 只是为了看看会发生什么。这行得通,但我宁愿找到一种方法来保留

以上是关于html/css - 使用带有 <img> 标签的精灵 - 如何在 Chrome 中删除轮廓?的主要内容,如果未能解决你的问题,请参考以下文章

html css 怎么使img和a标签在一行中间对齐,并在div中居中

html css 怎么使img和a标签在一个行内元素中间对齐

使用 SVG、HTML/CSS、ImageMap 创建带有可点击省份/州的地图

html css里设置div为50%透明,为div里面的img添加opacity:1;不透明,但显示的结果img也是透明的,

HTML/CSS - 阴影图像调整大小

如何使用 React 前端从 Mongoose 显示带有 <img> 的图像