HTML 源代码中没有嵌套链接元素的嵌套超链接区域

2023-12-31

我想要一些看起来和行为都像大矩形(整页宽)内的超链接的东西,这也是超链接。下面是它应该是什么样子的 ASCII 艺术表示:



|-------------------------------------------|
| Some text  [_link_]                            |
|-------------------------------------------|
  

整个外部矩形(块元素)将成为超链接。在这个矩形内应该有一些文本,并且在该文本的末尾应该有另一个链接。

不幸的是,嵌套链接(A 元素)在 (X)HTML 中是非法的:

12.2.2 嵌套链接非法

A元素定义的链接和锚点不能嵌套; A 元素不得包含任何其他 A 元素。

(from http://www.w3.org/TR/html401/struct/links.html#h-12.2.2 http://www.w3.org/TR/html401/struct/links.html#h-12.2.2),所以上面的最自然的实现方式

<a href="xxx" style="display: block">
  Some text
  <a href="yyy">link</a>
</a>

不是有效的 HTML。更糟糕的是,某些网络浏览器在某些情况下enforce通过将内连杆元件移动到外连杆元件的闭合元件的外侧来满足此要求。这当然完全破坏了布局。

所以我想问的是如何到达layout上面使用 HTML 和 CSS(但没有 JavaScript)呈现,但是没有嵌套链接元素在 HTML 源代码中。如果行为尽可能接近嵌套链接元素的行为(对于在实现 HTML 标准方面不太严格的浏览器),那就太好了。


编辑 (16-01-2009)

澄清:使用两个以上链接元素的解决方案是完全可以接受的

<a href="xxx" ...>Some text</a>
<a href="yyy" ...>Link</a>
<a href="xxx" ...>& nbsp;</a>
...

你可以尝试这样的事情:

div.a {
  position: relative;
  background-color: #F88;
  z-index: 0;
}
a.b {
  position: relative;
  z-index: 2;
}
a.b:hover {
  background-color: #8F8;
}
a.c {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
a.c:hover {
  background-color: #88F;
}
a.c span {
  display: none;
}
<div class="a">
  foo
  <a href="bar" class="b">bar</a>
  <a href="foo" class="c"><span>baz</span></a>
</div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HTML 源代码中没有嵌套链接元素的嵌套超链接区域 的相关文章

  • 使用反增量更改 z-index

    我尝试制作一个图像滑块 当鼠标悬停在一个点上时 它将显示图片 我也尝试使用在图像之间切换z index但什么也没动 slider counter reset index 1000 slider input name slide switch
  • 为什么开发者讨厌 iframe? [复制]

    这个问题在这里已经有答案了 可能的重复 iframe 被认为是 不好的做法 吗 https stackoverflow com questions 362730 are iframes considered bad practice 在与
  • 如何在数据表中colspan rowspan?

    I am trying to use colspan and rowspan attributes with jQuery Datatables where a product sku can span 2 rows and a week
  • 身体动画不流畅

    下面代码中的 spaceShip 在开始按住任何箭头键时移动并不顺利 它移动一步 冻结一瞬间 然后 平稳 地移动 怎样才能让它从一开始就顺利运转 而不是 冻结 My code
  • 如何在 select2 下拉列表中换行?

    我正在使用 select 2 下拉菜单 然后在其内容中显示一些长句子 我想在句子的正确位置添加换行符 但下拉菜单是自动调整的 For example the content of the dropdown right now looks l
  • 当共享相同的行和列时,将网格项设置为不重叠

    现在 当两个网格项共享相同的行和列时 它们会相互重叠 div class some grid container div Item 1 div div Item 2 div div 我如何让它们不重叠 当共享相同的行和列时 其行为可能类似于
  • 先按行再按列布局 div

    我有一个容器div and 3 div里面如下 div div 1 div div 2 div div 3 div div 不知道每一个的内容div内部 但它们的高度和宽度是可变的 集装箱的高度由最高的决定div inside 我想展示这些
  • 如何消除 HTML 内容周围的边距?

    以下 HTML 显示正常 div style width 100px height 100px background red div Hello div div
  • 我如何能够以两行显示标题,并且每行的字体大小不同?

    我正在使用 Google Chart API 创建时间线图 并希望将图的标题修改为两行 问题 我如何能够显示具有不同字体大小的两线图表标题 电流输出 理想输出 相关研究 我唯一能找到的是有人试图用饼图来做到这一点 但我尝试了但无法使其发挥作
  • 如何隐藏div元素中太长的文本?

    如何隐藏 div 中的溢出 如果文本比 div 长 则文本将换行到新行 div style width 50px border 1px solid black test test test test div 也许是 CSS 属性text o
  • Twitter 卡元标签问题

    有问题的网址 https www halleonard com viewpressreleasedetail action releaseid 10261 https www halleonard com viewpressreleased
  • 如何在codeigniter中将上传图片比例限制为16:9?

    这是我用来上传图像的代码 this gt load gt library upload ext pathinfo file name PATHINFO EXTENSION img name now ext imgConfig upload
  • 删除子元素上的 CSS 过滤器

    我的 CSS 代码有问题 正如您所看到的 我在 li 元素上有过滤器 但它覆盖了其他元素 我需要使其他两个元素没有过滤器 有没有可能这样做 main width 300px height 300px background color blu
  • Angular - CSS - 自定义类型=文件输入,如何使用按钮而不是标签?

    我制作了一个类型为 file 的自定义输入字段 因为我不喜欢默认的输入字段 为了实现这一目标 我做了
  • 使用 CSS 使一行 div 高度相同

    我有一排必须具有相同高度的 div 但我无法提前知道该高度可能是多少 内容来自外部源 我最初尝试将 div 放置在封闭的 div 中并将它们向左浮动 然后我将它们的高度设置为 100 但这没有明显的效果 通过将封闭 div 的高度设置为固定
  • 检查 jQuery 1.7 中是否存在基于文本的选择选项

    所以我有以下 HTML 片段
  • 刷新页面时保存用户的选择

    我目前有一个页面显示不同团队的数据 我有一些数据 用户可以单击使其处于 打开 或 关闭 状态 并为每个数据显示不同的图标 它基本上就像一个清单 只是没有物理复选框 我想记住哪些 复选框 已被选中 即使在用户刷新页面或关闭浏览器并稍后返回之后
  • 不可勾选的单选按钮与专有的复选框

    从 UI 角度来看 是拥有一组具有取消选中功能的单选按钮更好 还是拥有一组独占的复选框 意味着一次只能选中一个 更好 Update 我没想到对此会有如此负面的反应 如果我给出一个更接近其使用方式的示例 也许会有所帮助 我有一个充满数据绑定内
  • 在移动设备上滚动

    这个问题更多的是一个建议研究 我确实希望它对其他人有帮助 并且它不会关闭 因为我不太确定在哪里寻求有关此事的建议 在过去的 6 个月里 我一直在进行移动开发 我有机会处理各种设备上的各种情况和错误 最麻烦的是滚动问题 当涉及到在网站的多个区
  • HTML 锚点,禁用样式

    我有一些 html 锚链接代码 与文档的其余部分不同 我希望它看起来不是链接 有没有一种简单的方法可以禁用由于将文本包装在锚标记中而引起的样式更改 而不必强行使其相同 即 如果我更改正文字体样式 我不必也更改其他一些 link东西 将颜色设

随机推荐

  • 如何将 C# 文档生成为 CHM 或 HTML 文件?

    有没有办法直接从 Visual Studio 中从代码文档生成可读文档文件 也考虑2010年 代码示例
  • 在父类中记录静态方法

    我有一个抽象类 Parent 有 2 个子类 A 和 B Parent 有一个名为 do 的静态方法 我想知道是否有一种方法可以让该静态方法在 A 类被称为 A do 时在 Logger 中添加日志信息 在被称为 B do 时在 Logge
  • PHP Exception::getCode() 与其实现的 Throwable 接口相矛盾

    我发现了一个我无法理解的矛盾 异常 getCode https www php net manual en exception getcode php 有这样的定义 final公共异常 getCode 无效 mixed 附说明 返回异常代码
  • 什么存储位置(SQL Server 或文件系统)可以提高保存 tiff 图像的性能?

    我们的系统需要存储大小约为 3k 的 tiff 图像 我们在给定时间收到约 300 张图像 需要快速处理它们 一旦收到约 100 000 张图像 这些图像就会从我们的系统转移到另一个存档系统或被清除 我正在寻找图像文件初始保存的最佳性能 传
  • 有没有关于 gremlin 'match()' 如何工作的文档?

    我正在用 match 遍历编写 gremlin 查询 某些模式匹配的行为似乎与其他模式语言不同 输入遍历器值如何与模式变量绑定 g V A B match as x as y project x y gt x v A y v A gt x
  • 使用summary r 进行逻辑值计数

    在数据框中 我有一列包含 Y 和 N 值 该数据框还有一个 id 列 我想创建两列 一列包含 Y 总数 另一列包含每个 id 的 N 总数 我尝试使用 dplyr summarise 函数执行此过程 group by id gt summa
  • Polymer 2.0 webcomponents-loader.js 缺少 Edge polyfill

    我们目前将项目从 Polymer 1 更新到 Polymer 2 混合版本 我知道 webcomponents hi sd ce js 是 Edge 的 polyfill 在 Microsoft Edge 上测试页面时 我现在收到一条错误
  • 服务器端验证 Facebook 用户

    我正在编写一个 Facebook 应用程序 其中列出了用户的朋友 并与用户提供的有关他们的信息 存储在 Google App Engine 数据库中 进行交叉引用 我的应用程序的运行方式如下 用户登录 Facebook 后 通过 Faceb
  • 如何在页面刷新时保留无线电输入状态

    我有一个表单 如果用户提交有错误的表单 以防页面刷新 我需要在该表单上存储所有单选按钮的状态 我想实现与此非常相似的目标 function example input type radio checked each function thi
  • 如何检查复制快照代理状态?

    我想在使用此语句启动代理后检查代理的状态 EXEC sp startpublication snapshot publication 因为我想做下一步 需要工作已经开始 我不相信有内置复制存储过程来检查快照代理状态 我可能是错的 但是 您可
  • 将 Maven 输出发送到文件

    在 Windows 7 上 我尝试发送maven 3命令到文本文件 我从我试图分析的项目的根目录调用该命令 命令是 mvn dependency tree Dverbose Dincludes commons collections Dou
  • 具有零值双精度的奇怪 if 语句行为

    有人愿意向我解释一下它的价值吗this oBalance QouteBalance因小于零而被评估为真 但显然不是 请参见下图 在比较 C 中的双精度数时 我是否遗漏了一些基本的东西 public double QouteBalance g
  • 如何使用apache Spark的MLlib的线性回归?

    我是apache Spark的新手 从MLlib的文档中 我找到了scala的示例 但我真的不知道scala 有人知道java中的示例吗 谢谢 示例代码是 import org apache spark mllib regression L
  • 以编程方式获取调试信息

    Using include
  • git 结帐。添加稀疏签出排除的目录

    在稀疏结账场景中 该命令git checkout 恢复应该被忽略的目录 这是设计使然 还是 Git 中的潜在问题 我在用着git checkout 放弃我对工作副本所做的任何更改 是否有另一个命令可以执行相同的操作并且不会遇到此问题 这是一
  • “snprintf_s”的错误安全感

    MSVC的 安全 sprintf函数有一个模板版本 它 知道 目标缓冲区的大小 然而 这段代码在结束后很高兴地在堆栈上绘制了 567890bytes char bytes 5 snprintf s bytes TRUNCATE s 1234
  • 最小起订量 - 如何验证静态类调用和委托?

    我刚刚开始阅读 Moq 框架 并考虑将其应用到我现有的代码中 我可以提出一个测试用例来验证基本函数调用 但现在坚持将其应用于委托和静态类 以下是被测系统 SUT public class SUT ISUT private IInterfac
  • 在 Swift 中,我们是“发送消息”还是“调用方法/函数”?

    Swift 在编译时是否保留方法查找列表 或者是否调用特定内存位置中的函数 关于this http davedelong tumblr com post 58428190187 an observation on objective c 我
  • 在 Mathematica 中求解二元递归方程,这可能吗?

    我尝试使用RSolve求解二变量递归方程数学 但它只是重复我输入的内容 是否可以求解两个变量递归方程数学 也许您应该在问题中包含方程式 因为您可能只是使用RSolve错误地 数学可以解一些二变量递推方程 但不是全部 有时免费套餐Guess
  • HTML 源代码中没有嵌套链接元素的嵌套超链接区域

    我想要一些看起来和行为都像大矩形 整页宽 内的超链接的东西 这也是超链接 下面是它应该是什么样子的 ASCII 艺术表示 Some text link 整个外部矩形 块元素 将成为超链接 在这个矩形内应该有一些文本 并且在该文本的末尾应该有