Javascript 是否可以将Span/UL/LI与RaphaelJS重叠

Javascript 是否可以将Span/UL/LI与RaphaelJS重叠,javascript,raphael,Javascript,Raphael,我刚开始学习RaphaelJS(尽管我熟悉SVG),并尝试在许多图像上实现自定义覆盖。我的图像是这样组织的(ID仅供参考): 每个有6个,每个有10个 基于特定的数据标准,我希望在此集合中的图像子集上放置一个动态覆盖。我尝试了几种不同的技巧: 1-包含在兄弟姐妹div中的整个div至“家长”的单张论文。 每个span作为“imageholder”的同级span为2-1张纸。 3-作为“家长”的子女,完整div的单张纸。 4-整个div作为正文的顶级子级的单张纸 在所有情况下,svg都低于

我刚开始学习RaphaelJS(尽管我熟悉SVG),并尝试在许多图像上实现自定义覆盖。我的图像是这样组织的(ID仅供参考):


每个
    有6个
  • ,每个
      有10个

        基于特定的数据标准,我希望在此集合中的图像子集上放置一个动态覆盖。我尝试了几种不同的技巧:

        1-包含在兄弟姐妹
        div
        中的整个
        div
        至“家长”的单张论文。
        每个
        span
        作为“imageholder”的同级
        span
        为2-1张纸。
        3-作为“家长”的子女,完整
        div
        的单张纸。
        4-整个
        div
        作为
        正文
        的顶级子级的单张纸


        在所有情况下,svg都低于要覆盖的svg(或者根本不可见)。我假设这与
        inline
        vs
        block
        在相关元素上的显示有关,但我不确定。

        这更像是CSS问题,而不是js/raphael问题

        更可靠的解决方案是为每个
        span
        创建一个新的文件作为兄弟文件,否则单击事件将不会注册,因为svg元素将位于锚点的顶部

        试试

        ul li a {
          display: inline-block;
          position: relative;
        }
        
        ul li a span.raphael {
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          z-index: 1;
        }
        

        为了降低调试的复杂性,您应该首先尝试用静态html覆盖div,然后让Raphael将其SVG/VML魔术填充到div中。

        正是我所需要的。谢谢
        ul li a {
          display: inline-block;
          position: relative;
        }
        
        ul li a span.raphael {
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          z-index: 1;
        }