I take it then that your <ol> is going to be inside of the <div id="middle">? This really isn't necessary because you can just as easily style the <ol> like <ol id="middle">, keeing those declaration & selectors, and eliminate the need to contain it in another container. This reduces the size of your HTML, for faster downloads, etc. But it is valid, either way.
I do not see the error you report. I do question why you need to use "line-height:1.5em" on a <div>, which is a container, not a text element. It would like instructing a <div> to have "font-family:arial;". It would make more sence to instruct "p" (the quintessential "text" declaration) to have the a line-height:1.5em, or for that matter, font-family: Georgia, serif; font-size: 10pt; as well. etc.
Taking the line-height:1.5em out of the #middle isn't correcting any bug, it is making the code correct. Maybe that is part of what you are seeing. But in my editor, I do not see the error you are reporting. Everything looked okay to me.
Now, if you were going have TEXT inside of the <div #id-middle> that needed to be styled differently than everywhere else on the web page, go: