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

在所有支持css的浏览器中居中显示文本

  •  1
  • clyfe  · 技术社区  · 14 年前

    我有一个片段:视图 here 编辑 here

    在所有支持的浏览器(至少firefox3+和chrome)上,我怎样才能让“x”保持在圆圈的中间位置

    代码段:

    <!DOCTYPE HTML>
    <html>
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
      <title>Backbone: Tody</title>
    
      <style>
        .delete {
          -moz-border-radius: .75em;
          -webkit-border-radius: .75em;
          width: 1.4em;
          height: 1.4em;
          text-align: center;
          display: inline-block;
          line-height: 1.4em;
          display:inline-block
          vertical-align:middle
          font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
          font-size: 14px;
          font-weight: bold;
          color: white;
          background-color: gray;
          cursor: pointer;
        }
        .delete:before {
          content: "\2715";
          /* content: "\00D7"; */
        }
        .delete:hover {
          background-color: red;
        }
      </style>
    
    </head>
    <body>
    
    <div class="delete"></div>
    
    </body>
    </html>
    
    2 回复  |  直到 14 年前
        1
  •  0
  •   alxndr    14 年前

    如果你想让它在不同的浏览器中成为完美的像素,最好的选择可能是使用图像——x的定位将取决于不同浏览器中的默认字体大小。

    也就是说,我觉得在FF4b和Chrome 7操作系统上已经足够接近了。。。

        2
  •  0
  •   clyfe    14 年前

    我通过设置这样的边距并使内部空间(框+填充)与字体大小相同来完成这项工作。 http://jsbin.com/unera3/5/edit

    <!DOCTYPE HTML>
    <html>
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
      <title>Backbone: Tody</title>
    
      <style>
        .delete {
          -moz-border-radius: .75em;
          -webkit-border-radius: .75em;
          width: 1.4em;
          height: 1.4em;
          text-align: center;
          line-height: 1.4em;
          vertical-align:middle
          font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
          font-size: 14px;
          font-weight: bold;
          color: white;
          background-color: gray;
          cursor: pointer;
        }
        .delete:before {
          content: "\2715";
          /* content: "\00D7"; */
        }
        .delete:hover {
          background-color: red;
        }
      </style>
    
    </head>
    <body>
    
    <div class="delete"></div>
    
    </body>
    </html>