Как добавить контент, который уже существует в другом #div:before

#javascript #css

#javascript #css

Вопрос:

Как добавить контент, который уже существует в другом #div:before, потому что существующий div я установлю как фиксированную позицию

 #text-1{
  width:100%;
  text-align:center;
  /* visibility:hidden; */
  /* position:fixed; */
  }

#text-2 {
  width:100%;
  text-align:center;
  }

#text-2:before {
  content:"Equal to the contents of #text-1";
  width:100%;
  text-align:center;
  color:#ff0000;
  position:absolute;
  width:100%;
  left:50%;
  background-color:#e3e3e3;
  border-top:1px solid #999999;
  margin-left:-50%;
  margin-top:18px;
  font-style:italic;
 }
      
 <div id="text-1">Content Text-1</div>
<div id="text-2">Content Text-2</div>  

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

1. Нет, это невозможно, особенно с CSS, и у Js будут проблемы с адресацией псевдоэлементов.

2. Независимо от того, псевдо-элементы предназначены для стилизации , а НЕ для фактического содержимого.

Ответ №1:

Для этого вам нужно использовать jquery. Сначала включите библиотеку jquery в свой html-файл, если ее там нет, а затем добавьте приведенный ниже код javascript в свой тег head:

 <script type="text/javascript">

$(document).ready(function(){
    var contents = $("#text-1").html();
    $("#text-2").html(contents);
});

</script>
  

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

1. Это имеет примерно тот же эффект , что и псевдокод операционной системы, но фактически не добавляет текст в псевдоэлемент. Хорошее решение.