The way I solved this problem, is introducing a pure CSS fall-back, that older browsers that don't support CSS calc would only read.
figure.left {
width: 48%;
width: -webkit-calc(50% - 20px);
width: -moz-calc(50% - 20px);
width: calc(50% - 20px);
}
The left and right panels, get a width of 48% if the browser cannot read the calc values.
figure.logo {
min-width: 40px;
width: 4%;
width: -webkit-calc(40px);
width: -moz-calc(40px);
width: calc(40px);
}
And the logo, which sits in-between the two panels, gets a width of 4%. And also a minimum width of 40px. And if the calc values can be read by the browser, they are 40px.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…