新窗口图标(用于Web辅助功能)


74

是否有默认,标准,推荐或众所周知的图标表示链接将打开新的浏览器窗口?

这是出于Web可访问性的原因。还是基本上所有人都免费?

我意识到,那些能够充分利用它们的用户(使用屏幕阅读器)甚至不会在乎图像的外观,而对替代文本更感兴趣。

决定去这个: ![新窗口图标] [1]。

除非有人可以提出一个被更广泛采用的建议?


2
该图标是否有Unicode字符?还是应该使用图像?
collimarco

Answers:


12

没有已经建立的标准图标。

例如,您选择的图标类似于Wikipedia中用于标记指向外部网站(不属于Wikipedia)的链接的图标。但是,您可以在网站上使用它,从而在自己的页面中建立约定。只需确保操作一致即可:标记有该图标的所有链接都必须打开到新页面,而未标记该图标的所有链接都应在同一页面中打开。如果您拥有稳定的用户基础,并且他们有机会习惯您的约定,则可以改善可访问性。如果您的网站主要是由一次性访问者访问的,那么您只会增加视觉混乱。


2
是的,谢谢,这证实了我的怀疑。我猜互联网不是一件事就是“一致”的
Lee Englestone 09年

3
对于正在寻找Wikipedia外部链接图标的公共域副本的任何人,它都在这里:commons.wikimedia.org/wiki/File : External.svg(您可能需要自己对其进行栅格化-由于某些原因,预先栅格化的版本是GPL许可)
Tobias Cohen

2
@TobiasCohen如果将矢量艺术进行GPL处理,则光栅艺术也将进行GPL处理,因为它是衍生作品。但是,根据该链接,该图标是公共领域的,因此可以矢量和栅格两种形式自由使用。
Mark E. Haase 2012年

我将Ben的图标与John的CSS结合在一起,最终得到了一个不错的解决方案:)
RozzA

2
实际上,有人为编写将这个符号包含到Unicode中的详细建议而烦恼:europatastatur.de/material/Unicode_Proposal_External_Link.pdf。已经十年了...现在还不在那里。
Jealie '17

73

我参加这个聚会很晚,但是看看我在CodePen中发现了什么

enter image description here

a[target="_blank"]::after {
  content: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAQElEQVR42qXKwQkAIAxDUUdxtO6/RBQkQZvSi8I/pL4BoGw/XPkh4XigPmsUgh0626AjRsgxHTkUThsG2T/sIlzdTsp52kSS1wAAAABJRU5ErkJggg==);
  margin: 0 3px 0 5px;
}
<a class="external" href="https://example.org" target="_blank">external link</a>


@wOxxOm:感谢您的编辑和代码片段。有趣的是a[target="_blank"]:after,我手中的冒号可与Safari 11.1和Firefox 61一起使用。哪个浏览器需要双冒号?请随时编辑答案。谢谢
Laryx Decidua

1
所有浏览器都支持“不正确”的单冒号语法AFAIK。可能是因为太多的人不了解或不关心伪元素和伪类之间的区别。
wOxxOm

2
这绝对比包括整个自定义字体要好,只是添加一个链接输出图标= p
IncredibleHat

该解决方案效果很好;但是,由于背景较暗,我不得不编辑图像并找到从png图像到base64字符串的在线转换器。调整图像大小需要围绕创建转换轨道再走一圈,但解决display:inline-block; vertical-align:text-top;了我的显示问题。谢谢。
WEBjuju

1
相当整洁,但它不会随字体缩放。:(
Greg Pettit

44

对于许多Unicode字符,您需要使用以下字体(至少对于Windows而言,如果可以测试,请对Linux和Mac进行注释):

a:link {font-family: 'Segoe UI Symbol' !important;}

同样,您可以应用CSS选择器以如下方式使用该target属性:

a[target='blank']
a[target]

请记住,浏览器对 a选择器,因此a:link/ /a:visited一定要考虑一下。


Unicode“两个连接的正方形”字符:

http://www.fileformat.info/info/unicode/char/29c9/index.htm

Two Joined Squares

的CSS

a[target='_blank']::after {content: '\29C9';}

支持

Mac OS X,优胜美地:2种字体Apple SymbolSTIXGeneral


Unicode“带有右上象限白方块”字符:

http://www.fileformat.info/info/unicode/char/25F3/index.htm

White Square with Upper Right Quadrant

的CSS

a[target='_blank']::after {content: '\25F3';}

支持

Mac OS X中,优胜美地:3种字体Apple SymbolSTIXGeneralMenlo


Unicode“右上阴影白色方形”字符:

http://www.fileformat.info/info/unicode/char/2750/index.htm

Upper Right Drop-Shadowed White Square

的CSS

a[target='_blank']::after {content: '\2750';}

支持

Mac OS X的10.10约塞米蒂有三种字体:Arial Unicode MSMenloZapf Dingbats


我怀疑这些符号中的任何一个都会被大多数用户识别为外部链接的符号。
MrUpsidown

我怀疑不提出客观上更好的批评就不会对世界有好处。
约翰

28

我喜欢这个在新窗口中打开的unicode符号

↗️或↗

东北箭头确保您使用的是utf-8 html。

HTML是 &#x2197;


有没有简单的方法可以更改其颜色?
花生

25

我会选择这样的东西: 在新窗口中打开

正如其他人提到的那样,您选择的图标已被维基百科和其他网站广泛使用,以表示指向外部网站的链接。但这更多是个人喜好,而不是网络标准。


@ www-0av-Com不必挑剔,但alt应使用该属性来描述图像,因此在您的示例中,它可能类似于:alt="New window icon"。话虽如此,一个title属性将在悬停上显示一个工具提示,在这种情况下,它对可访问性和可用性非常有用:title="Link opens in a new window"尽管我现在更喜欢说“新标签”而不是“新窗口”。看看我的完整的答案在这里stackoverflow.com/questions/1899772/...
里卡多玉米

很晚了,但我不能不反驳这一意见。在这些情况下,该alt属性绝对不应该描述图像的外观,并且绝对不能提及“ icon”或“ image”。替代文字应描述图像的功能,因为它是功能图像。选择替代文本时,没有像“描述图像”这样的单一规则适用-上下文就是一切。阅读整个WebAIM替代文本文章-很好
Stephen P



5

尝试| ͟↗̱ |:

|&#863;&nearr;&#817;|

并与Arial兼容

&#8739;&#863;&nearr;&#817;&#8739;

5

尚未看到以下选项。
只是CSS像这样结束:在新窗口中打开图标

参见此处:https : //codepen.io/Bets/pen/KGBqqb(以下运行片段未正确显示)

编辑:添加了另一个选项,不需要链接后的另一个元素。

   

 .newWindow {
      display:inline-block;
      margin-left:5px;
      position: relative;
      border: 1px solid;
      width: 8px;
      height: 8px;
    }

    .newWindow:after {
      position: absolute;
      top:-8px;
      right:-2px;
      font-size:0.8em;
      content:"\1f855";
    }

    .newWindow:before {
      position: absolute;
      top: -3px;
      right: -3px;
      content: " ";
      border: 4px solid white;
    }

a[target="_blank"] {
         position: relative;
    }

a[target="_blank"]:after {
     position: absolute;
     top: 3px;
     right: -15px;
     content: "\1f855";
     font-size: 13px;
     color: black;
     line-height: 3px;
     height: 5px;
     width: 5px;
     border-right: 2px solid white;
     border-top: 2px solid white;
}

a[target="_blank"]:before {
     position: absolute;
     top: 4px;
     right: -15px;
     content: " ";
     border: 1px solid black;
     width: 8px;
     height: 8px;
}
<a href="#">Link followed by span</a><span class="newWindow"></span>
<br/>
<a href="#" target="_blank">Just link</a>


很好,但是当我按“运行代码段”时得到的结果看起来不像该图像
cz

看起来不错,但CSS太复杂,无法将其作为样式修改器添加到链接样式(如)中a[target="_blank"]::after。您的解决方案需要在html中为您需要的每个链接添加div。其他解决方案不需要更改html。只会将符号添加到指定了target属性的链接中。
敬畏

@awe您是正确的,因此我添加了第二个选项,该选项可以在不更改html的情况下工作。
下注

5

四个有用的符号:

⧉ &#x29C9; &#10697;  U+29C9 TWO JOINED SQUARES
❐ &#x2750; &#10064;  U+2750 UPPER RIGHT DROP-SHADOWED WHITE SQUARE
⍈ &#x2348; &#9032;  U+2348 APL FUNCTIONAL SYMBOL QUAD RIGHTWARDS ARROW
⎘ &#x2398; &#9112;  U+2398 NEXT PAGE

2

在我的WordPress博客上,我不得不链接到多个站点,这些站点显然禁用了后退按钮(Facebook和Google翻译结果)。对于这些链接,我将其设置为打开新窗口。我收集了一些“新窗口”图标,但是它们总是打断行距(也许是WordPress的事情;图标周围没有多余的空间),所以我决定使用title =“”表示“链接打开新窗口” ”和链接内的文本图标[+],在链接文本的末尾,以空格分隔。


2

我知道我参加晚会很晚,但是FWIW这是我的解决方法\\(ツ)_ /¯,

HTML:

<a href="#" target="_blank">Your link</a>

jQuery的:

如果您知道此版本的原始JS版本,请告诉我们,我很乐意在此处添加它(我不是JS开发人员😊)

$("a[target='_blank']").attr({title:"Link opens in a new tab"}).addClass("new-tab");

CSS:

.new-tab:after {
    display: inline-block;
    content: "⇱";
    position: relative;
    top: -5px;
    margin-left: 2px;
    transform: rotate(90deg);
}

演示:

这是一支钢笔:https : //codepen.io/anon/pen/MBBXjP(例如,此链接应在新窗口中打开,哈哈)。


多年来,这种技术对我非常有用,因为:

  • 我不必title每次创建在新标签中打开的链接时都手动添加属性。
  • 我不必添加新的窗口图标。
  • JavaScript和CSS可以完成繁重的工作,我要做的就是添加target="_blank",仅此而已。
  • 如果我没有访问HTML的权限,但仍然需要/想要增强网站/ webapp的可访问性,则可以使用此方法。
  • 此方法对于内联和块级元素都适用。

我本来希望能够使用此图标🗗,但问题是iOS设备不支持该图标,我认为macOS也是如此。


2

如今,您可以使用备忘单中的Font Awesome 5中的图标-实心图标

在此处输入图片说明

接近所选择的图标。

查看solid.css时,我注意到字体的名称是“ Font Awesome 5 Free”:

a[target='_blank']::after {
    content: ' \f35d';
    font-family: "Font Awesome 5 Free";
    color: blue;
}

或者,如果您不使用Font Awesome CSS而只想定位字体:

@font-face {
    font-family: "FontAwesomeSolid";
    font-weight: bold;
    font-style: normal;
    src : url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.11.2/webfonts/fa-solid-900.ttf") format("truetype");
}

a[target='_blank']::after {
    content: ' \f35d';
    font-family: "FontAwesomeSolid";
    color: blue;
}

1

附加的图片(任何人都可以免费使用或编辑)怎么样?在此处输入图片说明

1在此处输入图片说明

我正在考虑将其添加到现有单个按钮的右侧,以便它们成为水平按钮组,使用户可以选择单击链接并在新窗口中打开它。


9
可能想要裁剪该图标。
Kirk Woll

0

好的,我来晚了,但是这是我想出的改善其他所有人答案的方法:

<链接的模型> 外部链接图标

我在这里找到了超级整洁的图标:https:
//icons8.com/icon/43738/external-link在此处缩小/优化了SVG:https://petercollingridge.appspot.com/svg-optimiser
并将生成的SVG的base64嵌入一个CSS样式规则,用于指定ems中的所有大小:

a[target="_blank"]::after {
  content: "";
  width: 1em;
  height: 1em;
  margin: 0 0.05em 0 0.1em;
  background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2Ij48cGF0aCBkPSJNOSAyTDkgMyAxMi4zIDMgNiA5LjMgNi43IDEwIDEzIDMuNyAxMyA3IDE0IDcgMTQgMlpNNCA0QzIuOSA0IDIgNC45IDIgNkwyIDEyQzIgMTMuMSAyLjkgMTQgNCAxNEwxMCAxNEMxMS4xIDE0IDEyIDEzLjEgMTIgMTJMMTIgNyAxMSA4IDExIDEyQzExIDEyLjYgMTAuNiAxMyAxMCAxM0w0IDEzQzMuNCAxMyAzIDEyLjYgMyAxMkwzIDZDMyA1LjQgMy40IDUgNCA1TDggNSA5IDRaIi8+PC9zdmc+) no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: text-bottom;
}
An <a href="" target="_blank">external link</a> is super pretty! 😁<br />
<span style="font-size: 2em;">In <a href="" target="_blank">all</a> sizes!</span><br />
<span style="font-size: 3em;">Even <a href="" target="_blank">super large</a> ones!</span><br />
<span style="font-size: 0.5em;">And in <a href="" target="_blank">super tiny ones</a> too!</span><br />

它对我来说绝对是惊人的!
我可能永远不会再回到可能的解决方案了。


我还发现指定选择器很有用,因为a[target="_blank"]:not(.no-external-link-icon)::after这样可以禁用将图标添加no-external-link-icon<a>元素的图标显示。
保罗
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.