Вы не найдете эти детали в спецификации CSS, но в спецификации HTML.А HTML довольно точно определяет, как должны отображаться элементы fieldset
и legend
, и, по историческим причинам, реализации макетов для этих элементов чрезвычайно жесткие, с очень небольшим приспособлением к изменениям режимов макета через свойство display
.
По этой причине display: grid
просто не поддерживается на полях ни одним браузером.Фактически, всего несколько дней назад обсуждался вопрос о предлагаемом дополнении к спецификации HTML, чтобы указать, как следует обрабатывать свойство display
для элементов fieldset
и legend
, и эточто планируется добавить:
Элемент fieldset
, когда он генерирует блок (т. е. не «display: none» или «display: contents»), должен действовать следующим образом:
Это в основном цементируеттекущий текст, в котором говорится, что элемент fieldset
должен устанавливать контекст форматирования блока, без указания того, как он должен себя вести, если UA решит не следовать этому определению.
Это в сочетании с текущим взаимодействующим поведением браузера, означает, что на макет элемента legend
не повлияет его родительский элемент fieldset
, имеющий display: grid
, так как его родительский элемент fieldset
не сможет стать контейнером сетки.