【问题标题】:JQuery/CSS: Div-overlay and not affect positions of other divsJQuery/CSS:Div-overlay,不影响其他 div 的位置
【发布时间】:2016-10-08 11:51:06
【问题描述】:

如何让div覆盖其他div(比如..dropdownlist)而不影响其他div的位置?

我有一个#hidden div,当您将鼠标悬停在#HoverMe div 时会出现,将其取消悬停并再次隐藏。 但是那个 div 在悬停时会移动其他 div。

  1. 如何让hidden-div覆盖其他div?

  2. 如何使隐藏的 div 不影响其他 div 位置?

怎么样:

    ------    ------   ------
   |  1  |  |   2   | |  3   |  //#HoverMe div is not hovered
    ------   -------   ------
             ______
    ------  |      |  -------   ------
    |  1  | |Affect| |   2   | |  3   |  ////#HoverMe div is hovered, affects others div positions
    ------  |      |  -------   ------
             ------

我想要什么

             ______
    ------  |  No  |----   ------
    |  1  | |Affect| 2  | |  3   |  //Just overlay, without affecting others divs positions
    ------  |      |---   ------
             ------

我的代码:

<script>
$(document).ready(function(){
    $("#HoverMe").hover(function(){
        $("#hidden").css('display', 'block');
    }, function() {
        $("#hidden").css('display', 'none');
        }
    );

});
</script>

我使用我的#HoverMe-div 显示#hidden-div,其中包含我要显示的内容列表。

 <div id="HoverMe" >
     This owner own @Html.DisplayFor(model => model.TotCar) cars in total
 </div>              

 <div id="hidden" style="background-color: black"> //<------- hidden
     @foreach (var car in Model.Car) { 
         <div>@car.Name</div> 
      }
</div>

【问题讨论】:

  • 听起来你只需要position:absolute ?
  • @Flink 真棒!如此简单。
  • 将所有元素,包括隐藏元素包裹在&lt;div&gt; 中,使用position: relative; 设置样式,然后使用position: absolute; 设置隐藏元素的样式,并设置topleft 属性(相对到封闭的&lt;div&gt;)
  • @StephenMuecke 谢谢!
  • @StephenMuecke 你知道任何让Hidden div 出现在HoverMe div 下的好方法,不管HoverMe div 在哪里?

标签: javascript jquery css asp.net-mvc


【解决方案1】:

position:absolute 添加到#hidden div,它应该可以工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-17
    • 1970-01-01
    • 1970-01-01
    • 2016-03-28
    • 2011-12-05
    • 1970-01-01
    • 1970-01-01
    • 2013-12-13
    相关资源
    最近更新 更多