Well, that’s tough to say without knowing what motherboard you have or any details about your machine. In most machines, I would venture to say that this is okay depending on what you buy. I’ve been mixing and matching odd sticks of memory for years and it has never hurt anything. In general, if the motherboard doesn’t like the memory, it simply doesn’t boot up.
2700 is a bandwidth (or speed) rating for your memory. It is intended to run in a 333MHz motherboard. This is the maximum speed that the memory will run stable. You can put it in a slower machine with no problems. The motherboard determines the running speed. You can also buy faster memory (3200) and put it in this motherboard if you want. It just won’t run at its full capability and potential until it is in a faster machine. You see, 3200 is designed to run in a 400MHz machine. (We’re talking Front Side Bus speed of the motherboard, not the processor speed.)
Think of it like the speed rating of a tire. If the max speed rating is 100mph, then the tire is safe at any speed slower than 100. The same goes for memory bandwidth. You can buy 2700, 3000, 3200, 3500, 3700, 4000, 4200, or even 4400, and they will all run fine in your 333MHz machine along side your 2700.
The 256MB refers to the size or capacity of the ram. To my knowledge, the only time mixed capacities cause problems is when you have a motherboard which uses dual channel memory. Only the most modern high end motherboards have that. When 2700 was popular, dual channel was not yet very mainstream. Again, I am only guessing about that.
If you get stuck with memory that you cannot use, it always sells good on Ebay.
Good luck.