As already mentioned, basic DNS does not do this. However, if you control the client (i.e., it's software that you code and distribute), you could use SRV records:
http://en.wikipedia.org/wiki/SRV_record
So if you want one response for HTTP and another for HTTPS, you would put something like the following in your DNS zone record:
_https._tcp.s.test.com. 86400 IN SRV 0 5 443 special.domain.com.
_http._tcp.s.test.com. 86400 IN SRV 0 5 80 simple.domain.com.
So a DNS client that looks for the https/tcp service for the the "s.test.com" record gets a response back saying the service is on host special.domain.com, port 443. A DNS client that asks for http/tcp for "s.test.com" gets back a response saying host simple.domain.com, port 80.
The "0 5" are priorities/preferences so that you can do round-robin if you have multiple hosts for the same service (special1, special2, ...; simpleA, simpleB, etc.).
Most software (e.g., web browsers) don't look up the SRV records, only A records.