CSS として見たとき、 display
プロパティ以外が適用されていなければ、以下の二つの要素間に違いはありません。しかし、 HTML として見たとき、その二つの要素は異なります。
HTML
1<div style="display: inline"></div>
2<span></span>
質問文のコードでは、恐らく div
要素に対して display: inline
を設定した状態なのだと思いますが、この状態では span
要素と div
要素に CSS としての違いはありません。セマンティクスに関係なく、要素に装飾を適用することが出来ます。
ここで、 CSS は装飾を行うもので、要素の性質自体を変化させるものではないことに注意する必要があります。つまり、 div
要素や span
要素は HTML として見たとき、どのような装飾が適用されていても、異なる要素になります。div
要素と span
要素は、どちらも特別な意味を持ちませんが、これらの要素ではカテゴリとコンテンツモデルが異なります (参考)。簡単に言えば、以下のようなコードは有効な HTML ではないということです。このことから、この二つは CSS としては同じ、 HTML としては異なるものだといえます。
HTML
1<span style="display: block">
2 <div style="display: inline"></div>
3</span>
恐らく、一方は「装飾によらず要素の性質が変化していないこと」を話していて、もう一方は「CSS の整形としては違いがないこと」を話していたため、会話が噛み合わなかったのではないかと思います。