Why can't I attack my enemy?
Sigh.
I did a bunch of further research and found this bug report: "Can't attack Yuan Shao's settlements [Updated - Bug can be recreated]"
When you're fighting an alliance and it dissolves because a faction was eliminated, the game may mess up your war status with the remaining members.
This has been suggested as a temporary workaround:
For whatever reason this bug is flipping your war status. If you make peace with any faction you are having this bug with you will then be able to attack them. It won't tell you to declare war, it won't show you're at war on the diplomacy screen, their color will remain grey on the map for the rest of the game, and you also won't be able to call any allies or vassals to arms against them.