Как создавать всплывающие окна в css / Javascript?

#javascript #jquery #html #css #popup

#javascript #jquery #HTML #css #всплывающее окно

Вопрос:

Я пытаюсь создать всплывающие окна, содержащие список строк:

  1. Поддержка
  2. Контакты
  3. ДЕМОНСТРАЦИЯ

В 1-й строке должна отображаться поддержка. Во 2-й строке должен отображаться Contact, а в 3-й строке — Demo.

Я смог создать всплывающие окна, содержащие одну строку, перейдя по ссылке w3schools http://www.w3schools.com/howto/tryit.asp?filename=tryhow_js_popup но я не уверен, как создавать всплывающие окна, состоящие из нескольких строк.

Графическое представление того, что я пытаюсь получить, показано здесь: Всплывающие окна с несколькими строками

Код, который я использовал по ссылке w3schools, показан ниже:

 <!DOCTYPE html> <html> <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> <body style="text-align:center">

<h2>Popup</h2>

<div class="popup" onclick="myFunction()">Click me to toggle the popup!   <span class="popuptext" id="myPopup">Support</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>
  

Вместо простого всплывающего окна я написал поддержку. На данный момент я могу получить только одну строку, как показано здесь: Всплывающее окно в одну строку

Комментарии:

1. Что вы пробовали? Довольно просто, единственное, что вы делаете, это переключение между скрытым и отображаемым элементом. Поэтому вам просто нужно добавить к элементу, который вы переключаете. Я предлагаю использовать неупорядоченный список и элементы списка вместо span .

2. Существует множество способов сделать что-то подобное.

Ответ №1:

В качестве краткой попытки выполните следующие шаги, чтобы создать то, что вы хотите

1- откройте упомянутую вами ссылку

2- измените html-код на :

  <div class="popup" onclick="myFunction()">Click me to toggle the popup!
<div class="popuptext" id="div">
     <div><span id="myPopup">Support</span><br/></div>
     <div><span id="myPopup1">Contact</span><br/></div>
     <div><span id="myPopup2">Demo</span><br/></div>
</div>
</div>
  

3- измените myFunction() блок кода на :

 var popup = document.getElementById('div');
popup.classList.toggle('show');
  

4- Добавьте этот css класс к style элементу в head

  .popup .popuptext div{
   text-align: center;
   background:#ad4747;
   border-radius: 6px;  
   width: 160px; 
   margin-top:2px; 
}
  

5- В конце запустите и посмотрите результат

но, как вы знаете, есть несколько способов создать всплывающее меню с помощью интерфейсных инструментов ,

но мое решение — это быстрый дизайн, надеюсь, вам поможет.

Дополнительная полезная ссылка