Boa noite, Taina!
O PHP é que controla a exibição ou não do HTML. Em um if você poderia imaginar como se o que tá dentro dele fosse um echo, que imprime na tela o html. Seria algo tipo:
if (mysqli_query($conexao, $query)) {
    echo "<p class="alert-success" > Produto <?= $nome; ?>  foi adicionado com sucesso!</br> </p>");
} else {
    echo "<p class="alert-danger" > Produto <?= $nome; ?>  NÃO foi adicionado!</br> </p>");
}
Só que, como o navegador não executa instruções php, você tem que informar que aquele bloco de código em específico é php, por isso informamos as partes php dentro das tags "<?php" e  "?>" como em:
<?php  /** aqui informo que vou começar uma instrução php. A partir daqui, tudo será interpretado como PHP **/
if (mysqli_query($conexao, $query)) {
/** aqui eu informo que vou acabar uma instrução php. A partir daqui, tudo será interpretado como HTML **/ ?>
    <p class="alert-success" > Produto <?= $nome; ?>  foi adicionado com sucesso!</br> </p>
<?php /** aqui informo que vou começar uma instrução php. A partir daqui, tudo será interpretado como PHP **/
} else { 
/** aqui eu informo que vou acabar uma instrução php. A partir daqui, tudo será interpretado como HTML **/ ?>
    <p class="alert-danger" > Produto <?= $nome; ?>  NÃO foi adicionado!</br> </p>
<?php /** aqui informo que vou começar uma instrução php. A partir daqui, tudo será interpretado como PHP **/
}
mysqli_close($conexao); 
/** aqui eu informo que vou acabar uma instrução php. A partir daqui, tudo será interpretado como HTML **/ ?>
Assim, após cada tag "<?php" o interpretador do PHP executa as instruções e, após a tag "?>" ele volta a renderizar o HTML puro.
Espero ter ajudado. Se ainda tiver dúvidas, só postar.
Abraço.