I can't understand why for can be used with past simple. Here're two expressions from my textbook:
How long have you been married?
meaning they're still married.
How long were you married?
meaning they're no longer married.
For both of them the answers should be for 2 years. What does for mean in both cases?