hola, los saltos de linea en sistemas unix como mac os funcionan de forma distinta a windows, en php los saltos de linea con \n y \r se traducen simplemente como U000A y U000D asi que no es una forma muy compatible de hacerlo
por eso, cuando trabajas con archivos, php tiene una
constante llamada PHP_EOL que hace saltos de linea de manera nativa
para html en principio no deberia hacer falta, con \n deberia bastar, pero el protocolo http dice que debes usar \r\n asi que en general es buena practica - podria ser la causa de tus problemas