Это проблема, связанная с попыткой сохранить правильность моей семантики html.Могу ли я вставить кнопку внутри другой кнопки?
У меня есть родительская кнопка, которая выполняет обе функции на одной странице и выступает в роли родительского тега для большого контейнера, который гнездится на якоре, который перенаправляется на другую страницу, и тег div, который также действует как parent для другой кнопки, которая должна выполнять некоторые действия.
<button>
<div id="the-most-big-container"
<a href="http://www.RedirectMeToAnotherPage.com"></a>
<div>
<button> do some action </button>
</div>
</div>
</button>
Я попытался вложенности кнопку, дал ему класс и идентификатор и ни один из свойств, которые я применяю к классу и ид получить выполняется на кнопку ребенка, более Кроме того, кнопка ребенок получает полностью из большой контейнер и лежит в DOM так же, как это полный независимый тег, не вложенный никаким другим тегом.
[Update]
Видимо, это запрещено гнездо кнопки внутри другого, но, кроме того, я хотел бы получить объяснение, почему поведение вложенной кнопки будучи не реагирует на стили CSS, и как именно это теперь, полагаясь на DOM, теперь это полный независимый тег сам по себе или что?
Также теперь мне придется менять тег родительской кнопки на любой другой тег, чтобы я мог вставлять дочерние кнопки внутри. Я хотел бы предложить заменяющий тег для тега родительской кнопки ex: я мог бы изменить родительскую кнопку в тег div,
, но мне нужен тег, который будет более описательным семантически (что-то другое, чем просто div), У меня была эта кнопка родителя, в первую очередь, чтобы действовать как кнопка переключения, так что когда я нажимаю на нее, она отображает и скрывает самый большой-контейнер-div.
В дополнении к этому, w3c валидатор кидает эта ошибка: 'Ошибка: Элемент div не разрешен как дочерний элемент кнопки в этом контексте. (Подавление дальнейших ошибок из этого поддерева.) ' – Roberrrt
Контекст заключается в том, что кнопка« display: inline-block ». Измените кнопку, чтобы отобразить: блок, и он будет «действительным». Если вы это сделаете, нет, лучше не делать этого. –
@PatrickAleman факт, что он действителен или нет, не зависит от свойства 'display', а от того, что элемент' 'является интерактивным. –