更改javascript弹出窗口,以便文本不会超出页面

时间:2017-12-17 22:11:17

标签: javascript jquery html

如何更改弹出框以便识别窗口大小并相应调整框,或将其显示在文本下方?

在我的代码中,几乎所有文本都超出了文本,因此是不可见的。

我试图从相对的位置改变位置,但没有接近预期的效果。

<!DOCTYPE html>
<html>
<head>
<style>
/* Popup container - can be anything you want */
.popup {
    position: relative;
    display: inline-block;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* The actual popup */
.popup .popuptext {
    visibility: hidden;
    width: 160px;
    background-color: #555;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 8px 0;
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 50%;
    margin-left: -80px;
}

/* Popup arrow */
.popup .popuptext::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: #555 transparent transparent transparent;
}

/* Toggle this class - hide and show the popup */
.popup .show {
    visibility: visible;
    -webkit-animation: fadeIn 1s;
    animation: fadeIn 1s;
}

/* Add animation (fade in the popup) */
@-webkit-keyframes fadeIn {
    from {opacity: 0;} 
    to {opacity: 1;}
}

@keyframes fadeIn {
    from {opacity: 0;}
    to {opacity:1 ;}
}
</style>
</head>
<body style="text-align:center">

<h2>Popup</h2>

<div class="popup" onclick="myFunction()">Click me to toggle the popup!
  <span class="popuptext" id="myPopup">Фёдор Ильи́ч Дан (настоящая фамилия Гу́рвич;1871—1947) — российский революционер и политический деятель, один из лидеров и теоретиков меньшевизма. Муж сестры Ю. О. Мартова Лидии Дан.<img src="https://upload.wikimedia.org/wikipedia/commons/5/54/Fedor_Dan.jpg" class="bubble"></span>
</div>

<script>
// When the user clicks on div, open the popup
function myFunction() {
    var popup = document.getElementById("myPopup");
    popup.classList.toggle("show");
}
</script>

</body>
</html>

2 个答案:

答案 0 :(得分:1)

您需要定位图像以适合您的弹出窗口。

.bubble{
  width: 100%;
  height: auto;
}

选中fiddle

答案 1 :(得分:0)

你需要指出你的问题,很难理解你想要的东西。

如果您希望弹出窗口位于按钮下,则应删除&#34; .popup .popuptext&#34;的底值。并使用&#34; top&#34;相反(例如&#34; top:20px&#34;)