3

我有当前场景的以下 HTML 和 CSS:

在此处输入图像描述

如您所见,搜索文本框和过滤器下拉菜单完美地串联在一起。但是按钮出现了。

这是所有 3 个控件的 HTML 代码:

<table>
<tbody>
    <tr>
        <td>
            <div class="search_result_div">
                <div>
                    <input type="text" style="width:200px;" id='searchButton' value="some text"><span>&nbsp;&nbsp;in&nbsp;&nbsp;</span>
                    <select id="filterDropdown">
                        <option value="all" selected="selected">All Areas</option>
                        <option value="docs">Documents</option>
                    </select>
                    &nbsp;&nbsp;
                    <a onclick="return callSearch();" class="btn" id="searchButton" href="../sys/SearchResults.aspx?q="><span>Search</span></a>
                </div>
            </div>
        </td>
    </tr>
    <tr>
        <td>
        </td>
    </tr>
</tbody>
</table>

这是所有控件的 CSS:

.search_result_div a.btn 
    {
      background: url("/images/bg_btn_left.gif")  no-repeat scroll left center transparent;
      display: inline !important;
          float: none;
      font-size: 11px !important;
      line-height: 21px !important;
      margin: 0 !important;
      outline: medium none;
      padding: 3px 0 3px 2px !important;
      text-indent: inherit !important;
    }

 .search_result_div a.btn span 
    {
        background: url("/images/bg_btn.gif") no-repeat scroll right center transparent;
        font-weight: bold !important;
        margin: 0 !important;
        padding: 4px 8px 4px 6px !important;
    }

注意:按钮分为两个图像。

bg_btn_left.gif: 在此处输入图像描述

bg_btn: 在此处输入图像描述

请建议我哪里出错了?

谢谢

4

6 回答 6

1

这是我必须自己解决的问题之一。我想我通过将所有默认边距和填充设置为零来解决它。看看这是否对你有帮助。

*{margin:0px; padding:0px;}

或者如果它是对齐使用的问题

vertical-align: middle;
于 2012-07-13T06:41:03.087 回答
1

对于内联元素,您可以使用vertical-align: middle; 垂直对齐的 CSS 属性。

于 2012-07-13T06:41:26.857 回答
1

看这里:http: //jsfiddle.net/YUXxf/ 您的代码可以按您的意愿工作,但我认为图像的顶部边框更大,这会将图像向下推..

于 2012-07-13T06:43:17.450 回答
1

我总是将这个 css 文件css.reset添加到我的项目中,以确保我不使用浏览器定义的默认 css 设置。

于 2012-07-13T06:44:57.747 回答
1

嘿,我认为你应该给一些属性你的.search_result_div a.btn

像这样

input{
vertical-align:top;
}
.search_result_div a.btn{
display:inline-block;
vertical-align:top;
*display:inline; // for ie
}
于 2012-07-13T06:50:07.803 回答
1

试试这个:

<style type="text/css">
.search_result_div a.btn 
{
  background: url("bg_btn_left.gif")  no-repeat scroll left top transparent;
  display: inline !important;
      float: none;
  font-size: 11px !important;
  line-height: 21px !important;
  margin: 0 !important;
  outline: medium none;
  padding: 4px 0 3px 2px !important;
  text-indent: inherit !important;
}

.search_result_div a.btn span 
{
    background: url("bg_btn.gif") no-repeat scroll right top transparent;
    vertical-align:top;
    font-weight: bold !important;
    margin: 0 !important;
    padding: 4px 8px 4px 6px !important;
}
</style>
于 2012-07-13T07:02:45.793 回答