Как сохранить разрывы строк в блоке <code>?

У меня есть несколько примеров кода, которые я хочу опубликовать в HTML-документе. Я обертываю их тегами <code>, но я бы хотел, чтобы они были стилизованы так, чтобы разрывы строк сохранялись. Я могу сделать это, также заключив их в теги <pre>, но я бы предпочел использовать CSS.

Я пробовал следующее в IE7 (который по этой ссылке должен работать), но без радости (разрывы строк удаляются):

code {
    white-space: pre;
}

Это возможно?

Ответ 1

Проверьте, что ваш doctype действителен и в первой строке. Может быть, он скользит в режим причуд?

Ответ 2

Вы уверены, что не делаете что-то неправильно? Этот код работает для меня в IE7:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <style type="text/css">
  code { white-space: pre; }
  </style>
</head>
<body>
  <code>
      function() {
          alert('yay');
      }
  </code>
</body>
</html>