The shorts on sale are only 20 yuan.和The shorts are on sale for 20 yuan.哪个对?

问题描述:

The shorts on sale are only 20 yuan.和The shorts are on sale for 20 yuan.哪个对?

两句都对,两句都是地地道道的英语
第一句20 yuan是宾语,不过有省略成分,The shirts (which are) on sale are only 20yuan
第二句20 元 则是状语,补充说明 on sale
句子成分不一样,仅此而已了