The general rule of thumb of training is to do the most demanding exercise directly after the warm up, so that your energy is utilized effectively. So if you are a power lifter looking to get stronger, cardio before weights makes no sense. In fact, for a power lifter, traditional cardio is not recommended in their regimen at all.
WHEN IS CARDIO GOOD TO DO FIRST?
Let's say you are someone who is completely new exercising. Heavy weights are out of the question since it takes a considerable amount of time to learn the proper movement patterns and to build basic strength. Twenty minutes of moderate intensity cardio is going to be challenging for a new exerciser. Any light weight training after the cardio session is going to be focus on learning movement patterns with lighter weights for future workouts. This is one situation where cardio should be done before weight training and the intensity of both activities should be low to moderate. This type of cardio serves as an introduction to the gym. As many people quickly realize, the results you are looking for probably won't come just from a treadmill. Sure it is a tool that can help, but it should not remain main focus of your training. But what about the intermediate or advanced weight lifter who also wants to improve their cardio or shed a little fat?
WHAT ABOUT MORE ADVANCED EXERCISERS?
Say you have been lifting weights for a year or two and you're getting the hang of things. Your focus has been to build muscle and strength and you have seen decent results. Now you're looking to expose that newly built muscle by adding cardio to your regimen. For someone who wants to add cardio their weight lifting program, they going to benefit most from doing their cardio after weight lifting sessions. They are going to get more out of their cardio session because they should already be relatively exhausted from lifting session. This will help the body break down more fat considering their heart rate has already been elevated and they should be near a 'fat burning zone'. These cardio sessions should be fairly brief (20-30 minutes) and it is recommended that they are done under a HIIT protocol. HIIT stands for High Intensity Interval Training (more to come on this subject).
Keep in mind, training too long can cause a spike in the stress hormone, cortisol, and will diminish any results. Those marathon sessions lasting more than 90 minutes are typically going to do more harm than good. According to the physiology of the average body, shut it down after 60 minutes of intense training. If you cannot finish your working sets in an hour, you are not using your time efficiently.
HOW INTENSE SHOULD CARDIO BE?
Performing cardio after an intense weight lifting session can be quite overwhelming to some. So you may be tempted to do your cardio first and lift weights after. This is not recommended when performed at a high intensity because the glycogen stores will be depleted before lifting weights causing a decrease in performance and is potentially dangerous. But, doing 5-10 minutes as a light warm up before lifting is acceptable. A few HIIT intervals are a great way to raise the heart rate and increase blood flow to the muscles. But be careful not to get carried away and burn all the glycogen that is needed for an effective lifting session. Keep the warmup under 15 minutes, any longer and your lifting performance may suffer.
So there are a few situations it is acceptable to do cardio before weights. But for most people, cardio should be done after weight training. For most people, steady state cardio is not recommended. Use a HIIT protocol for best results. The key to keep in mind is the main goal of the training session and to perform exercises that align with that specific main goal.