This is because Raspbian uses multiple partitions. Two of those partitions are the BOOT and RECOVERY partition, those are not the ones that contain your files, like your home directory and your desktop. The partition that contains those is formatted in EXT4 which is not readable by macs (by default), so it doesn't show up on your mac, even though it is there.
If you run
diskutil list on your mac with the sd card plugged in, you can see this extra partition. Here is my sd card running Raspbian Lite, so there is no RECOVERY partition:
/dev/disk2 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *15.9 GB disk2
1: Windows_FAT_32 boot 62.9 MB disk2s1
2: Linux 15.9 GB disk2s2
The "Windows_FAT_32" formatted partition is the BOOT partition, and the "Linux" (which is really EXT4) formatted partition is the main filesystem, you can see it takes up almost the full 16GB of the card.
To "fix" your sd card (even though there is nothing wrong with it) you will need to reformat it. Treat it as if it was brand new, like the first time you formatted it. If you're on Mac I'm assuming you either used the sd card formatter program that the RPi organization lists on their site, or
diskutil on the command line. Here is the offical RPi documentation on formatting sd cards on Mac.