1. They held special services for Christmas.

2. They held special services at Christmas.

3. They held special services on Christmas.
--------------------------
Q1: Are they all correct?
Q2: Were special services held on Christmas Day in #1? Or were special services held on other days in rememberance of Christmas Day? Or Are both OK?

1 and 2 could mean during the Christmas "season", not any specific day. #3 means on Christmas Day specifically.

All three are grammatically correct. :)

Thank you.

What about the following?

4. He gave me a book on my birthday.
5. He gave me a book for my birthday.
(In #5, Did he give me a book on my birthday? Or did he give me a book before or after my birthday? Are both OK? What is the meaning of 'for' in #5? Does 'for may birthday' modify 'gave' or does 'for my birthday' modify 'book'?)

"on" specifies that the gift was given on the date of the birthday. "for" does not specify a particular day, just that it was in observance of the birthday. Both are correct. The prepositional phrase modifies the verb "gave". It's an adverb phrase.

Thank you for your help. One more question...

6. I got a nice gift on my birthday.
7. I got a nice gift for my birthday.
(In #6, I received a gift on the date of the birthday. Is it right? In #7, is it different as you mentioned before? What about the part of speech of 'on my birthday' and 'for my birthday'? Do they modify 'got' or 'gift'? Are they adverbial phrases or 'adjective phrases'?)

http://www.jiskha.com/display.cgi?id=1489002707#1489002707.1489005327

A1: Yes, all three sentences are grammatically correct.

A2: The meaning of the sentences can vary slightly, depending on the intended context. Let's break down each sentence:

1. "They held special services for Christmas." In this sentence, it suggests that special services were held in honor of or in celebration of Christmas. It doesn't specify whether the services were held on Christmas Day itself or on different days leading up to Christmas.

2. "They held special services at Christmas." This sentence implies that the special services took place during the time of Christmas. It doesn't provide details about the specific day (Christmas Eve, Christmas Day, or other days during the holiday season).

3. "They held special services on Christmas." This sentence specifically indicates that the special services were conducted on Christmas Day itself.

So, in response to your question, #1 ("They held special services for Christmas") does not indicate whether the services were held on Christmas Day or on other days. However, both #2 ("They held special services at Christmas") and #3 ("They held special services on Christmas") explicitly mention that the services were connected to Christmas, with #3 specifically referring to services held on Christmas Day.