Задать вопрос
@Ankozar

Можно ли вкладывать тег a в a?

Сервер мне отдаёт json с массивом, каждый элемент которого - вот такая разметка:

<a class='piece_of_news pon0' href='https://depkult.admtyumen.ru/OIGV/culture/news/more_news.htm?id=11890568@egNews'>
    <p class='news_title title0'>Тюменцы выразят любовь к родному краю в новом конкурсе
    </p>
         <div class='news_image_div image_div0'>
              <img class='news_image image0' src='https://depkult.admtyumen.ru/images/thumbnails/300_200/t_1204985438_body.jpg'>
         </div>
    <p class='news_source source0'>
           <a href='https://depkult.admtyumen.ru/OIGV/culture/news/news.htm' class='source_url'> Источник: Департамент культуры Тюменской области 
           </a>
    </p>
    <p class='news_date date0'>19-01-2021</p>
</a>


Для удобства поставил абзацы, а так всё в одну строку.

При этом в браузере отображается вот так:
6006d8cf1df1b128071014.jpeg

То есть, он первый тег a закрывает перед вторым. Результат:

6006d8d76fa50343877441.jpeg

А если элемент .source_url меняю на, например, p, то отображается норм:

6006d90555ed4289489836.jpeg

Все элементы в первом блоке a. Результат:

6006d90bf21a0136290830.jpeg

Вопрос: a в a вообще вкладывать нельзя? Или как быть в этом случае?

Мне нужно чтобы заголовок, картинка и дата вели на страницу с новостью, а название источника вело на страницу с новостной лентой источника. То есть, на разные страницы. Но при этом желательно чтобы всё это было в одном блоке.
  • Вопрос задан
  • 477 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
В элемент <a> нельзя вкладывать интерактивные элементы (<a>, <button>, <details>, <embed>, <iframe>, <keygen>, <label>, <select> и <textarea>).
Повесьте на вложенный элемент обработчик события click и выполняйте переход средствами JavaScript.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Steppp
Когда что то сверсткал, копируй сюда Валидатор и чекай код на ошибки
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы