Sachverhalt: A. Die 1971 geborene A._ meldete sich im Oktober 2009 bei der Invalidenversicherung zum Leistungsbezug an. Nach Abklärungen und Durchführung des Vorbescheidverfahrens ermittelte die IV-Stelle des Kantons St. Gallen einen Invaliditätsgrad von 32 %, weshalb sie mit Verfügung vom 9. Dezember 2014 einen Rentenanspruch verneinte. B. Das Versicherungsgericht des Kantons St. Gallen hiess die dagegen erhobene Beschwerde mit Entscheid vom 11. April 2017 gut; unter Aufhebung der Verfügung vom 9. Dezember 2014 sprach es A._ eine halbe Invalidenrente ab 1. April 2010, eine ganze Rente vom 1. Juli bis zum 31. Dezember 2013 und wiederum eine halbe Rente ab 1. Januar 2014 zu. C. Die IV-Stelle beantragt mit Beschwerde in öffentlich-rechtlichen Angelegenheiten, der Entscheid vom 11. April 2017 sei aufzuheben und die Verfügung vom 9. Dezember 2014 zu bestätigen. Ferner ersucht sie um aufschiebende Wirkung des Rechtsmittels. A._ lässt auf Abweisung der Beschwerde schliessen. Das Bundesamt für Sozialversicherungen verzichtet auf eine Vernehmlassung.