No es que
:nth-of-type
sea mejor que
:nth-child
, es que son dos cosas diferentes. Al segundo puedes por ejemplo afectar a clases, al primero no.
Lo de los símbolos extraños en el selector de atributos es para encontrar cadenas que, por orden, empiecen por, terminen por, o contengan.
Las demás preguntas igual deberías de preguntarlas en
el foro de jQuery.