It is a plastic can filled with charcoal. If you overflow when filling the tank, it goes in the can instead of on the ground.
The can let the fuel evaporate, and a solenoid opens under aceleration pulling the fumes into the intake.
California does not want fuel to spill on the ground - the oxygenate MTBE that was used in USA fuels a few years back (and is still used in many oxygenated race fuels) will poison groundwater.
Oregon is so worried that you will spill fuel, you cannot pump your own fuel.