去掉滚动条

get rid of scroll bar

本文关键字:滚动条      更新时间:2023-09-26

我正在尝试制作一个简单的工具提示。问题是当我点击底部按钮时,工具提示会带来页面滚动条。在这种情况下,我希望工具提示应该与页面底部对齐并没有滚动条。

HTML:

<div class="main">
  <table>
    <tr>
      <td><button type="button">Click Me!</button></td>
    </tr>
    <tr>
      <td><button type="button">Click Me!</button></td>
    </tr>
    <tr>
      <td><button type="button">Click Me!</button></td>
    </tr>
    <tr>
      <td><button type="button">Click Me!</button></td>
    </tr>
    <tr>
      <td><button type="button">Click Me!</button></td>
    </tr>
    <tr>
      <td><button type="button">Click Me!</button></td>
    </tr>
    <tr>
      <td><button type="button">Click Me!</button></td>
    </tr>
  </table>
<div class="pop">Text</div>
</div>
 JS:
$(".main").on("click", "button", function(){
  var top = $(this).offset().top;
  $(".pop").show(".pop");
  $(".pop").css("top", top)
})
$(".pop").click(function(){
  $(this).css("display", "none")
})

样品:http://codepen.io/anon/pen/jEdRoY

您必须使用JavaScript计算高度。

在CSS中不可能的原因是固定的heighttop偏移和bottom偏移之间的冲突。

但您可以使用以下代码来计算溢出,并根据场景进行切换。

if(($("html").height() - (top + 400)) > 0) {
    //set top offset
} else {
    //set bottom offset
}

根据条件,可以选择设置topbottom以避免冲突。

这是的演示

如果要计算height和边距,请使用outerHeight

在这种情况下,您可以在popup窗口中尝试以下CSS类:

.pop{
    height:200px; 
    width:200px;
    border:red solid 1px; 
    position:fixed; 
    display:none;
 }

它隐藏了DIV在屏幕外的部分
如果你不想失去它,那么正如你所说,只有CSS无法实现。JavaScript是必需的!在我的项目中,

浮动刀架示例