Does gravitational time dilation happen due to height or difference in the strength of the field? The reason why you have to tune differently the atomic clocks in GPS is because the GPS is higher or because there is less gravity there, or both? In other words in a constant gravitational field which doesn't differ with height, will time dilation still occur?
They say that the reason why people on the first floor age slower than people on higher floors is because as you get further from the earth gravity weakens. Is that true? Does the difference in the field cause that or just the distance?
If pure distance doesn't matter then why do we say that for a spaceship accelerating forward clocks at the front tick faster than clocks at the back since both are accelerating at the same rate?
 A: Quite simply:
1) you know from special relativity that accelerated frames experiences a time dilation effect (time is slower for them), and that the more accelerated, the slower the time,
2) strong equivalence principle tells you that standing still on earth or at a constant height with respect to the ground means you're accelerated upward,
3) the upward acceleration felt on the ground is higher than the upward acceleration felt at the level of satelites, thus time is slower for you on the ground.
A: The time dilation is due to a difference in the gravitational potential energy, so it is due to the difference in height. It doesn't matter whether the strength of the gravitational field varies, or how much it varies, all that matters is that the two observers comparing their clocks have a different gravitational potential energy.
To be more precise about this, when the gravitational fields are relatively weak (which basically means everywhere well away from a black hole) we can use an approximation to general relativity called the weak field limit. In this case the relative time dilation of two observers $A$ and $B$ is given by:
$$ \frac{dt_A}{dt_B} \approx \sqrt{ 1 + \frac{2\Delta\phi_{AB}}{c^2}} \approx 1 + \frac{\Delta\phi_{AB}}{c^2} \tag{1}$$
where $\Delta\phi_{AB}$ is the difference in the gravitational potential energy per unit mass between $A$ and $B$.
Suppose the distance in height between the two observers is $h$, then in a constant gravitatioinal field with acceleration $g$ we'd have:
$$ \Delta\phi_{AB} = gh $$
If this was on the Earth then taking into account the change in the gravitational potential energy with height we'd have:
$$ \Delta\phi_{AB} = \frac{GM}{r_A} - \frac{GM}{r_B} $$
where $r_A$ and $r_B$ are the distances of $A$ and $B$ from the centre of the earth and $M$ is the mass of the Earth. Either way when we substitute our value of $\Delta\phi_{AB}$ into equation (1) we're going to get a time dilation.
As for the accelerating rocket: the shortcut is to appeal to the equivalence principle. If acceleration is equivalent to a gravitational field then it must also cause a time dilation in the same way that a gravitational field does. 
Alternatively we can do the calculation rigorously. The spacetime geometry of an accelerating frame is described by the Rindler metric, and we can use this to calculate the time dilation. The Rindler metric for an acceleration $g$ in the $x$ direction is:
$$ c^2d\tau^2 = \left(1 + \frac{gx}{c^2}\right)^2c^2dt^2 - dx^2 - dy^2 - dz^2 $$
We get the time dilation by setting $dx=dy=dz=0$ to give:
$$ c^2d\tau^2 = \left(1 + \frac{gx}{c^2}\right)^2c^2dt^2 $$
and on rearranging this gives:
$$ \frac{d\tau}{dt} = 1 + \frac{gx}{c^2} $$
which is just the equation (1) that we started with.
A: in a contant gravitational field which doesn't differ with hight, will time dilation still happen?
According to general relativity, yes. This means that two clocks at different heights are in EXACTLY THE SAME immediate environment (experience EXACTLY THE SAME gravitational field) and yet one of them ticks faster than the other. That is, the effect (gravitational time dilation) has no physical cause. Absurd isn't it?
Actually there is no gravitational time dilation. Falling light accelerates, just as ordinary falling objects do, and this variation of the speed of light causes the gravitational redshift (blueshift): 
http://courses.physics.illinois.edu/phys419/sp2013/Lectures/l13.pdf 
 University of Illinois at Urbana-Champaign: "Consider a falling object. ITS SPEED INCREASES AS IT IS FALLING. Hence, if we were to associate a frequency with that object the frequency should increase accordingly as it falls to earth. Because of the equivalence between gravitational and inertial mass, WE SHOULD OBSERVE THE SAME EFFECT FOR LIGHT. So lets shine a light beam from the top of a very tall building. If we can measure the frequency shift as the light beam descends the building, we should be able to discern how gravity affects a falling light beam. This was done by Pound and Rebka in 1960. They shone a light from the top of the Jefferson tower at Harvard and measured the frequency shift. The frequency shift was tiny but in agreement with the theoretical prediction." 
http://www.einstein-online.info/spotlights/redshift_white_dwarfs 
 Albert Einstein Institute: "One of the three classical tests for general relativity is the gravitational redshift of light or other forms of electromagnetic radiation. However, in contrast to the other two tests - the gravitational deflection of light and the relativistic perihelion shift -, you do not need general relativity to derive the correct prediction for the gravitational redshift. A combination of Newtonian gravity, a particle theory of light, and the weak equivalence principle (gravitating mass equals inertial mass) suffices. [...] The gravitational redshift was first measured on earth in 1960-65 by Pound, Rebka, and Snider at Harvard University..."
A: Gravitational time dilation is caused purely by "resisting" the gravitational field, in other words by accelerating in order to maintain a fixed position within the potential well.  There is no gravitational time dilation in free fall.
