Why is my HTML table not respecting my CSS column width?

Giving it both max-width and min-width attributes should work.

You may get more luck with setting widths for your table cells if you apply the rule table-layout: fixed to the table - this has helped me with a lot of cell-sizing issues when using tables. I would not recommend switching to using just DIVs to arrange your content if it fits the purpose of tables - to display multidimensional data.

I agree with Hristo but there are some cases where table need to be used and solution to your table problem is adding below class to the table and then changing any td width as per your need.

.tables{ border-collapse:collapse; table-layout:fixed;}

I hope this helps for someone who is looking for table solution!