How do I prevent Lion Mail from marking a message as read after deleting/archiving another message?

Solution 1:

Press +backspace to delete the message. No other message will be highlighted.

Warning: This deletes the selected message(s) permanently.

Solution 2:

There's a plugin for Apple Mail called TruePreview (freeware, http://christianserving.org/project/truepreview) which let you define when a message should be marked as read.

E.g I have set it to seven seconds so when I go through my messages (I do it the same way as you) they still are marked as unread. I have to stay on a message for seven seconds to be marked as read.

You can configure that behavior on a per account basis.

The plugin for Lion Mail is an alpha relase (please read the release notes)

Solution 3:

What works for me is to collapse the message preview section of the window, which requires clicking on a message index to open the message in a new window. In SnowLeopard, drag the divider below the message index to the bottom of the window; in Lion, drag the divider on the right side of the message index to the right of the window.

When using Mail like this, it won't mark a message as read until you open the message in a separate window. So, when the selection moves around the message index, it won't automatically preview the message and mark it as read.