代码之家  ›  专栏  ›  技术社区  ›  user70192

css-向左浮动和定位元素

css
  •  0
  • user70192  · 技术社区  · 15 年前

    我有一个anchor元素,它使用一个css类基本上用一个图像替换文本。我知道这听起来很奇怪。但是,最终的结果看起来是正确的(大多数情况下)。

    .toolLink a {   
        overflow:hidden;    
    }
    .toolEdit 
    {
        float:left;
        background:url(/resources/images/edit.png) no-repeat;
        width: 15px;
        height: 15px;
    }
    

    我的锚元素如下所示:

    <a href="#" class="toolEdit">edit</a>
    

    当包含“float:left”语句时,一切看起来都是正确的。但是,当我删除“float:left”语句时,“edit”一词会出现,图像会缩小。我需要删除float:left,因为我需要将内容集中在表的列中。但是,只要float:left存在,内容就会左对齐。我该怎么办?

    2 回复  |  直到 15 年前
        1
  •  1
  •   luckykind    15 年前

    这应该有效…

    你的CSS

    .toolEdit 
    {
        display:block;
        background:url(/resources/images/edit.png) no-repeat;
        width: 15px;
        height: 15px;
        text-decoration:none;
    }
    
    .toolEdit span 
    {
      visibility:hidden;
    }
    

    您也可以删除溢出:隐藏样式…不需要…

    你的HTML

    <a href="#" class="toolEdit"><span>edit</span></a>
    
        2
  •  0
  •   BrewinBombers    15 年前

    锚定是内联元素。尝试将display:block添加到.tooledit类。

    您也可以考虑使用DIV而不是锚,因为锚不在任何地方,也没有名称或任何其他锚目的。

    编辑:

    无论哪种方式,“编辑”都应该显示,除非您使用一些javascript删除它。在这种情况下,我建议将“编辑”文本与图像交换,而不是使用背景图像。