You do not need to specify float: left and display: inline-block for the same element, you use one or the other, not both. Float is used to place text around elements; it is not the best weapon to choose when creating a layout. Go with display: block and inline-block.
http://joshnh.com/2012/02/07/why-you-should-use-inline-block-when-positioning-elements/
Block elements - form blocks in accordance with the css block model. They have a width, height, padding, borders and margins and are located vertically one above the other.
Built-in elements - do not form boxes. They sit horizontally next to each other.
Inline block elements - act as block elements inside where they form blocks. Outside, they act as built-in elements that sit horizontally next to each other, and do not stack on top of each other.
Good resource: http://learnlayout.com/inline-block.html
According to SitePoint:
If you're new to CSS layouts, you'll be forgiven for making creative use of floating-point CSS the top of the skill. if you have used as many CSS layout tutorials as you can. Suppose mastering floats is a rite. You will be blinded by ingenuity, struck by complexity, and you will get a sense of achievement when you finally understand how the floats work.
Do not be fooled. You are brainwashed.
http://www.sitepoint.com/give-floats-the-flick-in-css-layouts/
source share