Поместите дочерний элемент внизу родительского элемента, пока динамические братья не заполнят родительский элемент - PullRequest
0 голосов
/ 20 февраля 2019

У меня есть элемент, который является родственным элементом <ul>, который заполняется динамически

<div>
    <ul>
    </ul>
    <p>hello</p>
</div>

Я бы хотел, чтобы <p> был зафиксирован в нижней части экрана до динамического <li>s требует, чтобы он был опущен ниже вида.

Я пробовал следующее, но не могу получить желаемые результаты.

Элемент находится в правильном положении внизу, а затем получаеттолкнул вниз, но в конечном итоге получает его братьев и сестер.

for(var i =0; i < 50; i++){
  var value = document.querySelector('input').value

  var node = document.createElement("LI");                 // Create a <li> node
  var textnode = document.createTextNode("Water");         // Create a text node
  node.appendChild(textnode);                              // Append the text to <li>
  document.querySelector("ul").appendChild(node);
}
div {
  height: auto;
  min-height: 90vh;
  position: relative;
}
p {
  position: absolute;
  bottom: 0;
}
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>
<div>
  <input type='text' value='dsaf'/>
  <ul>
  </ul>
  <p>hello</p>
</div>
</body>
</html>

Обратите внимание, что во фрагменте кода дочерний абзац выталкивается его братьями и сестрами, но затем перекрывается с ними.

1 Ответ

0 голосов
/ 20 февраля 2019

Это?

Я добавил padding-bottom:30px; к div

for(var i =0; i < 25; i++){
  var value = document.querySelector('input').value

  var node = document.createElement("LI");                 // Create a <li> node
  var textnode = document.createTextNode("Water");         // Create a text node
  node.appendChild(textnode);                              // Append the text to <li>
  document.querySelector("ul").appendChild(node);
}
div {
  height: auto;
  min-height: 90vh;
  position: relative;
  padding-bottom:30px;
}
p {
  position: absolute;
  bottom: 0;
}
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>
<div>
  <input type='text' value='dsaf'/>
  <ul>
  </ul>
  <p>hello</p>
</div>
</body>
</html>
...