According to a series of recent posts by Mr. Willis V. Hart the Civil War was not fought over slavery. Tariffs on Cotton was the reason, and those tariffs were a States' Rights issue. It is, however pretty easy to disprove bullplop like this - all one has to do is take a look at the Declaration of Causes of Seceding States which all cite slavery as their reason for leaving the union.
Between the dates 12/20/1860 and 11/20/1861 13 states ratified ordinances of secession, with four states - "Georgia, Mississippi, South Carolina, and Texas also issuing separate declarations of causes, in which they explained their reasons for secession" (quoted from Wikipedia).
Much of the complaining has to do with the North not adhering to the Fugitive Slave Clause contained in the 4th amendment to the Constitution (see here for the complete text of all four states' declarations).
Given the fact that four states specifically cited slavery as the reason they decided to leave the union, and no state ever cited States' Rights as a reason, it can be conclusively concluded that the Civil War was fought because of slavery. Case closed. The Civil War not fought because of tariffs or States' Rights. Both assertions (made on the blog of Mr. Willis Hart) are false and a disservice to those who seek an honest accounting of history.
Because without such an honest accounting we cannot acknowledge our mistakes and learn from them - which is exactly what many who dissemble on this issue desire. They don't want us to learn from history. Their desire is that minorities should continue to be discriminated against and deprived of their voting rights. I'm not saying this is Mr. Hart's motivation, but he surely is not a part of the solution with his recent (and numerous) Ahistorical commentaries on the subject of the Civil War and slavery.