Player is facing down when not moving?

I am creating a 3d side scroller and I need my player to face the direction he is moving (left or right). I do not want him facing up when I jump and I do not want him facing down when I am not moving.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerController : MonoBehaviour
{

    public float moveSpeed;
    public float jumpForce;
    public CharacterController controller;
    public float rotateSpeed;
    private Vector3 moveDirection;
    public float gravityScale;
  


    // Use this for initialization
    void Start()
    {
        
        controller = GetComponent<CharacterController>();
    }

    // Update is called once per frame
    void Update()
    {

        moveDirection = new Vector3(Input.GetAxis("Horizontal") * moveSpeed, moveDirection.y,0);


        if (controller.isGrounded)
        {
            moveDirection.y = 0f;
            if (Input.GetButtonDown("Jump"))
            {
                moveDirection.y = jumpForce;
            }
        }
        moveDirection.y = moveDirection.y + (Physics.gravity.y * gravityScale * Time.deltaTime);
        controller.Move(moveDirection * Time.deltaTime);

        transform.rotation = Quaternion.LookRotation(moveDirection);

I tried this and I also tried to rotate him then stop the rotation when he hits certain Euler angles.

if( !Mathf.Approximately( moveDirection.x, 0 ) )
transform.rotation = Quaternion.LookRotation(moveDirection);