代码之家  ›  专栏  ›  技术社区  ›  Fred Erim

如何使带有标志的h1可访问

  •  1
  • Fred Erim  · 技术社区  · 13 年前

    如何将徽标链接到主页,同时也有h1但不可见

    我有这样的布局

     <header id="pageHeader">
                        <h1>
                            <a href="<?php bloginfo('url'); ?>">
                            <?php bloginfo('name'); ?>
                            </a>
                        </h1>
    

    然后我用css作为图像的背景,但徽标没有加载,有人吗?

      header#pageHeader h1 a {
      width:130px;
      height:70px;
      text-indent:-9999px;
      background:url(/pict/logo.png);
      background-repeat: no-repeat;
    }
    
    4 回复  |  直到 12 年前
        1
  •  1
  •   Community Mohan Dere    6 年前

    你的失踪 display:inline-block;

    比较 this fiddle 具有 this one

    其中突出的差异 question ,引用如下:

    内联块
    此值使元素生成内联级别的块容器。内联块的内部被格式化为块框,元素本身被格式化为原子内联级别框。 内联
    此值会导致元素生成一个或多个内联框。


    很抱歉解释为什么这样做:

    Inline 方法 只占用你需要的空间,并允许其他元素与我一起流动 。您的a标签中没有文本。 所以它不需要占用任何空间,所以它没有。

    inline-block 方法 占用我配置要占用的任何空间(在CSS中定义),并允许元素在我旁边流动 。所以这应用了宽度和高度,而as inline没有

    另一种选择是 block ,这意味着 占据整排,不要让任何东西在我旁边流动

        2
  •  1
  •   Paulie_D    13 年前

    一个简单的 display:block 或 display:inline-block 答案是吗

    JSFiddle Demo

    #pageHeader h1 a {
        width:130px;
        height:70px;
        text-indent:-9999px;
        background:url(http://lorempixel.com/output/abstract-q-c-130-70-8.jpg);
        background-repeat: no-repeat;
        display:block;
    }
    
        3
  •  0
  •   Jukka K. Korpela    13 年前

    可访问的方式是

    <h1><a href=...><img src=... alt=... border=0></a></h1>
    
        4
  •  -1
  •   DJB    13 年前

    对于javascript修复,可以始终添加 onclick="location.href='yourblog';" 到你的h1标签