Влияет ли display:block у body на span в CSS

Есть код:

<html>
  <head>
    <title>CSS test 2</title>
  </head>
  <body style="color: red; font-weight: bold; display: block; background: url('bg.jpg');">
    <div>
      Some test text
      <div>
        Lorem ipsum etc..
        <span>
          One more dummy text
        </span>
      </div>
    </div>
  </body>
</html>

Будет ли display:block у body влиять на span?

Теория: наследование и display

В CSS у каждого свойства есть правило наследования: часть свойств по умолчанию передаётся от родителя к потомкам (например, color), а часть — нет (например, многие свойства, влияющие на тип и поведение CSS-бокса).
Свойство display относится к тем, которые не наследуются: если родителю задано display: block, это не означает, что дочерние элементы возьмут то же значение.
Если у элемента (например, у span) не задан display, он использует собственное значение из каскада/начального значения/стилей браузера, а не «копирует» display родителя.

Распространённая путаница: «родитель блочный» ≠ «все потомки автоматически блочные». Блочность родителя не превращает span в блочный элемент без отдельного правила.

Разбор данного HTML

Имеется разметка:

<html>
  <head>
    <title>CSS test 2</title>
  </head>
  <body style="color: red; font-weight: bold; display: block; background: url('bg.jpg');">
    <div>
      Some test text
      <div>
        Lorem ipsum etc..
        <span>
          One more dummy text
        </span>
      </div>
    </div>
  </body>
</html>

display: block у body влияет на отображение самого body (то, как он формирует свой бокс и участвует в форматировании страницы).
span при этом остаётся со своим типом отображения (обычно inline), потому что значение display от body к нему не передаётся по наследованию.
Чтобы span стал блочным, правило с display должно примениться к самому span (напрямую или через селектор).

Упрощённая схема идеи:

body (display: block)  --x-->  div (display: своё)
                         |
                         +----> span (display: своё)

Значок x означает: по наследованию значение display не передаётся.

Примеры, которые снимают вопрос

Пример A: значение display у body не делает span блочным:

body { display: block; }

Пример B: span становится блочным только при явном правиле для span:

body { display: block; }
span { display: block; }

Пример C: если требуется «взять значение как у родителя», это делается явно на самом элементе через inherit:

span { display: inherit; }

Таблица для запоминания:

СвойствоНаследуется по умолчаниюПрактический смысл
displayНетdisplay родителя не меняет display потомка автоматически
colorДа (типичный пример)Цвет текста часто переходит к вложенному тексту, если не переопределён

Итого: правильный вариант — 2) «Не будет», потому что display не наследуется, а значит display: block у body не меняет span автоматически.