A port can only be tagged when it is added to a VLAN that has a valid 802.1Q header.
create vlan test tag 10
configure vlan test add port 1 tagged
The 802.1Q standard states that on any given port you can have multiple tagged VLANs but only one untagged VLAN. Tagging means that the port will send out a packet with a header that has a tag number that matches the VLAN tag number. If the port only has one VLAN it is not required to stipulate what VLAN traffic the port carries (e.g. 802.1Q tag); however, if there are multiple VLANs with valid 802.1Q tags on any single port, the standard requires that the port must be tagged in each VLAN so the traffic can be distinguished.
For example if we have 3 VLANs on port 1 VL1, VL2, VL3 and I am sending out a packet on each one VLAN, the standard mandates there is a way to tell the receiving device which packet is for which VLAN.
Therefore if the 802.1q tag for VL1 is 1, VL2 is 2, and VL3 is 3 then the port will insert a header with the right tag number on each packet to correspond to the correct VLAN it is passing traffic on at any given time. The receiving device needs to be configured the same way.
Furthermore, when a port is tagged the device inserts a valid 802.1Q tag specific to the corresponding VLAN for every packet. The standard does allow for one untagged VLAN per port as mentioned above which means that you could have VL1 with an untagged port and VL2 and VL3 with tagged ports. All three VLANs are still unique. Any packet that has no tag will go to VL1. This is what Cisco does with their native VLAN. With Cisco IOS, tagged is the same as trunk and untagged is the same as access.