¿Cómo crear múltiples niveles de sangría en Javadoc?

88

Suponga que, como parte de la documentación de su código (Javadoc), desea indicar que las relaciones entre los elementos utilizan sangría profunda.

¿Cómo puedo crear una lista anidada como:

  • algún elemento
    • algún otro elemento
      • sin embargo, algún otro elemento
James Raitsev
fuente

Respuestas:

132
<ul>
  <li>Element</li>
  <ul>
     <li>Subelement...</li>

Puede usar HTML con bastante libertad dentro de los comentarios de javadoc.

Actualización: porque surgió, lo intenté

<ul>
    <li>one</li>
    <ul>
        <li>one point one</li>
    </ul>   
</ul>

y obten

  • uno
    • un punto uno

Estoy de acuerdo en que la anidación adecuada es mejor.

Charlie martin
fuente
2
Yo diría que <ul> anidado tiene que estar dentro de algún elemento <li>; para comparar, consulte w3.org/wiki/HTML_lists#Nesting_lists
user2622016
Puedes decir eso, pero intentarlo dice algo diferente.
Charlie Martin
1
@Charlie En lugar de decir "Estoy de acuerdo en que el anidamiento adecuado es mejor", ¿quizás podrías escribir un ejemplo que muestre cómo anidar correctamente? De lo contrario, tal vez algún principiante no entienda su comentario y utilice el formulario mencionado anteriormente.
Rauni Lillemets
2
Entendí que user2622016 quería decir que tienes que escribir así: <ul><li><ul>...</ul></li> </ul>, para que el más interno <ul> .. </ ul > también está dentro de un bloque <li> .. </li>.
Rauni Lillemets
1
Aunque no puedo encontrarlo explícitamente indicado (y miré), es el estilo que se usa en la documentación de Oracle . Además, NetBeans se queja de ello. Intellij, por otro lado, agrega felizmente las </li>etiquetas
SeverityOne
28

La forma correcta es la siguiente:

/**
 * <ul>
 *   <li>some element
 *   <li><ul>
 *     <li>some other element
 *     <li><ul>
 *       <li>yet some other element
 *     </ul>
 *   </ul>
 * </ul>
 */

Aunque JavaDoc toma prestado de HTML, no es HTML y debe omitir las </li>etiquetas, al igual que debe omitir las </p>etiquetas.

SeverityOne
fuente
1
¿Alguna referencia a la omisión de las etiquetas de cierre?
friederbluemle
1
Sí, aquí: oracle.com/technetwork/java/javase/documentation/… - aunque es implícito en lugar de explícito.
SeverityOne
No entiendo por qué esta respuesta no tiene más votos a favor.
John Smith
8

La lista anidada debe estar dentro de la suya <li>. <ul>no es un elemento hijo válido de <ul>.

Entonces tu ejemplo sería:

<ul>
  <li>some element</li>
  <li>
    <ul>
      <li>some other element</li>
      <li>
        <ul>
          <li>yet some other element</li>
        </ul>
      </li>
    </ul>
  </li>
</ul>
Dibujó Noakes
fuente
Su código da como resultado una lista con elementos vacíos. Aunque está correctamente anidado en HTML, el resultado renderizado es feo.
naXa