【问题标题】:Unable to lower embedded div element margin无法降低嵌入的 div 元素边距
【发布时间】:2019-12-19 04:49:58
【问题描述】:

在一个对话框窗口中,我有以下 div“windowSearchDiv”,其中包含下面代码中显示的 3 个元素。我正在尝试垂直对齐标签、文本输入和放大镜图像。标签和文本输入很好。但是,由于某种原因,我无法单独移动放大镜图像以使其与其他 2 个元素水平对齐。什么 CSS 可以在这里帮助我?

<div id="windowSearchDiv">
    <label for="windowMasterSearchBox" id ="windowMasterSearchBoxLabel">Search: </label>
    <input type="text" id="windowMasterSearchBox" placeholder="Enter Student Name..." />
    <a title="Search Students" id="windowMasterMagnifyingGlass"><img src="/images/icons/magnify.gif" alt="Search Students" border="0" /></a>  
</div>
#windowMasterMagnifyingGlass {
    float: none;
    margin-top: 1px;
    margin-right: 351px;
    cursor: pointer;
    margin: auto;
}


#windowMasterSearchBox, #windowMasterSearchBox {
    margin: auto;
    margin-bottom: 7px;
}

#windowSearchDiv {
    padding: 13px;
    display: block;
    text-align: center;
}
````[![The magnifying glass should be lower][1]][1]


  [1]: https://i.stack.imgur.com/DqtzM.png

【问题讨论】:

  • 您能否提供一个粗略的草图来说明您希望它如何显示?在不知道您希望它如何出现的情况下,很难给出正确的答案。

标签: html css margin


【解决方案1】:

不确定,如果我理解你的问题是正确的。 在这里,如果一个 js 小提琴, https://jsfiddle.net/mdsebans/cs7jy0vh/2/

                  #windowSearchDiv {
                    padding: 13px;
                    display: flex;
                    max-width: 300px;
                    text-align: center;
                }

PS: 是一个内联元素,所以如果你使用 display: block 使它成为一个块元素,它会从新的一行开始。 但我已经使用 flex 来修复它。

【讨论】:

  • 这里有误会。我的意思是水平对齐(整个页面,而不是页面下方)。
  • @CDAtheProgrammer 我刚刚更新了答案。那是你要的吗?或者只是在一行中标记并在另一行上输入一个按钮?
猜你喜欢
  • 1970-01-01
  • 2014-01-23
  • 2012-10-23
  • 2010-12-25
  • 1970-01-01
  • 2013-06-15
  • 1970-01-01
  • 2018-01-15
  • 1970-01-01
相关资源
最近更新 更多