 <p>Yes, you can using the flexible box model's <code>order</code> css property. Be aware that the parent element must have <code>display:flex</code> set</p> <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false"> <div class="snippet-code"> <pre class="snippet-code-css lang-css prettyprint-override"><code>ul { display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -moz-flex; display: -webkit-flex; display: flex; -moz-flex-flow: wrap; -webkit-flex-flow: wrap; flex-flow: wrap; } ul li { width: 100% } ul li:nth-of-type(1) { order: 2; } ul li:nth-of-type(2) { order: 3; } ul li:nth-of-type(3) { order: 4; } ul li:nth-of-type(4) { order: 5; } ul li:nth-of-type(5) { order: 1; }</code></pre> <pre class="snippet-code-html lang-html prettyprint-override"><code>&lt;ul&gt; &lt;li&gt;1&lt;/li&gt; &lt;li&gt;2&lt;/li&gt; &lt;li&gt;3&lt;/li&gt; &lt;li&gt;4&lt;/li&gt; &lt;li&gt;5&lt;/li&gt; &lt;/ul&gt;</code></pre> </div> </div> </p> <p>Also be aware that not all browsers support the flexible box model as outlined here...<a href="http://caniuse.com/#feat=flexbox" rel="nofollow">http://caniuse.com/#feat=flexbox</a></p> <p>However, there are quite a few polyfills out there you can use to bring support for older browsers if you need to support older browsers</p>