Página de documentación técnica - Construye una página de documentación técnica

Tell us what’s happening:

The test " The first child of each .main-section should be a header element." does not identify that it is in my code.

Your code so far

Introduction

ADVERTENCIA

El código semilla del desafío y/o tu solución excedió la longitud máxima que podemos transferir del desafío.

Tendrás que dar un paso adicional aquí para que el código que escribiste se presente en un formato fácil de leer.

Por favor, copia/pega todo el código del editor que se muestra en el desafío desde el que acabas de enlazar.

Reemplaza estas dos oraciones con tu código copiado.
Por favor, deja la línea ``` arriba y la línea ``` abajo,
porque permiten que tu código formatee correctamente en el post.

Your browser information:

El agente de usuario es: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36 OPR/107.0.0.0

Challenge Information:

Página de documentación técnica - Construye una página de documentación técnica

Tu código no se añadió correctamente.

usa el boton </>
image
y pega tu código entre las comillas triples
image

<section class="main-section" id="Introduction">
        <header>Introduction </header>
        <article>
          <p>Python es un lenguaje de alto nivel de programación interpretado cuya filosofía hace hincapié en la legibilidad de su código, se utiliza para desarrollar aplicaciones de todo tipo, por ejemplo: Instagram, Netflix, Spotify, Panda3D, entre otros.2​ Se trata de un lenguaje de programación multiparadigma, ya que soporta parcialmente la orientación a objetos, programación imperativa y, en menor medida, programación funcional. Es un lenguaje interpretado, dinámico y multiplataforma.</p>
          <p>Administrado por Python Software Foundation, posee una licencia de código abierto, denominada Python Software Foundation License.​ Python se clasifica constantemente como uno de los lenguajes de programación más populares.4</p>
        </article>
      </section>```

Tu código no se pegó correctamente (solo una parte).
copia tu codigo y pagalo todo entre las comillas triples
image
lo que esta en azul, ahi va tu codigo

<!DOCTYPE html>
<html Lang="en">
  <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Python</title>
    <link rel="stylesheet" href="styles.css" />
  </head>
  <body>
    <nav id="navbar">
      <header>Python</header>
      <ul>
        <li><a class="nav-link" href="#Introduction">Introduction</a></li>
        <li><a class="nav-link" href="#Modo_interactivo">Modo interactivo</a></li>
        <li><a class="nav-link" href="#Elementos_del_lenguaje_y_sintaxis">Elementos del lenguaje y sintaxis</a></li>
        <li><a class="nav-link" href="#Comentarios">Comentarios</a></li>
        <li><a class="nav-link" href="#Variables">Variables</a></li>
        <li><a class="nav-link" href="#Tipos_de_datos">Tipos de datos</a></li>
        <li><a class="nav-link" href="#Condicionales">Condicionales</a></li>
      </ul>
    </nav>
    <main id="main-doc">
      <section class="main-section" id="Introduction">
        <header>Introduction </header>
        <article>
          <p>Python es un lenguaje de alto nivel de programación interpretado cuya filosofía hace hincapié en la legibilidad de su código, se utiliza para desarrollar aplicaciones de todo tipo, por ejemplo: Instagram, Netflix, Spotify, Panda3D, entre otros.2​ Se trata de un lenguaje de programación multiparadigma, ya que soporta parcialmente la orientación a objetos, programación imperativa y, en menor medida, programación funcional. Es un lenguaje interpretado, dinámico y multiplataforma.</p>
          <p>Administrado por Python Software Foundation, posee una licencia de código abierto, denominada Python Software Foundation License.​ Python se clasifica constantemente como uno de los lenguajes de programación más populares.4</p>
        </article>
      </section>
      <section class="main-section" id="Modo_interactivo">
        <header>Modo interactivo </header>
        <article>
          <p>El intérprete de Python estándar incluye un modo interactivo en el cual se escriben las instrucciones en una especie de intérprete de comandos: las expresiones pueden ser introducidas una a una, pudiendo verse el resultado de su evaluación inmediatamente, lo que da la posibilidad de probar porciones de código en el modo interactivo antes de integrarlo como parte de un programa. Esto resulta útil tanto para las personas que se están familiarizando con el lenguaje como para los programadores más avanzados.</p>
          <p>Existen otros programas, como <a href="https://es.wikipedia.org/wiki/IDLE">IDLE<a/>, <a href="https://bpython-interpreter.org">bpython<a/> e <a href="https://es.wikipedia.org/wiki/IPython">IPython<a/>, que añaden funcionalidades extra al modo interactivo, como completamiento automático de código y coloreado de la sintaxis del lenguaje.</p>
          <p>Ejemplo del modo interactivo:</p>
          <code id="codigo">>>> 1 + 1
            2
            >>> a = range(10)
            >>> print(list(a))
            [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
          </code>
        </article>
      </section>
      <section class="main-section" id="Elementos_del_lenguaje_y_sintaxis">
        <header>Elementos del lenguaje y sintaxis </header>
        <article>
          <p>Python está destinado a ser un lenguaje de fácil lectura. Su formato es visualmente ordenado y, a menudo, usa palabras clave en inglés donde otros idiomas usan puntuación. A diferencia de muchos otros lenguajes, no utiliza corchetes para delimitar bloques y se permiten puntos y coma después de las declaraciones, pero rara vez, si es que alguna vez, se utilizan. Tiene menos excepciones sintácticas y casos especiales que C o Pascal.</p>
          <p>Diseñado para ser leído con facilidad, una de sus características es el uso de palabras donde otros lenguajes utilizarían símbolos. Por ejemplo, los operadores lógicos <code>!</code>, <code>||</code> y <code>&&</code> en Python se escriben <code>not</code>, <code>or</code> y <code>and</code>, respectivamente.</p>
          <p>El contenido de los bloques de código (bucles, funciones, clases, etc.) es delimitado mediante espacios o tabuladores, conocidos como sangrado o indentación, antes de cada línea de órdenes pertenecientes al bloque.30​ Python se diferencia así de otros lenguajes de programación que mantienen como costumbre declarar los bloques mediante un conjunto de caracteres, normalmente entre llaves <code>{}</code>.31​32​ Se pueden utilizar tanto espacios como tabuladores para sangrar el código, pero se recomienda no mezclarlos.3</p>
        </article>
      </section>
      <section class="main-section" id="Comentarios">
        <header>Comentarios </header>
        <article>
          <p>Los <a href="https://es.wikipedia.org/wiki/Comentario_(informática)">comentarios</a> se pueden poner de dos formas. La primera y más apropiada para comentarios largos es utilizando la notación ''' comentario ''', tres apóstrofos de apertura y tres de cierre. La segunda notación utiliza el símbolo <code>#</code>, que se extiende hasta el final de la línea.</p>
          <p>El intérprete no tiene en cuenta los comentarios, lo cual es útil si deseamos poner información adicional en el código. Por ejemplo, una explicación sobre el comportamiento de una sección del programa.</p>
          <code id="codigo">'''
            <i>Comentario más largo en una línea en Python</i>
            '''
            print("Hola mundo")  <i># También es posible añadir un comentario al final de una línea de código</i>
          </code>
        </article>
      </section>
      <section class="main-section" id="Variables">
        <header>Variables  </header>
        <article>
          <p>Las <a href="https://es.wikipedia.org/wiki/Variable_(programación)">variables</a> se definen de forma <a href="https://es.wikipedia.org/wiki/Tipado_dinámico">dinámica</a>, lo que significa que no se tiene que especificar cuál es su tipo de antemano y puede tomar distintos valores en otro momento, incluso de un tipo diferente al que tenía previamente. Se usa el símbolo <code>=</code> para asignar valores.</p>
          <div id="lista_linea">
            <ul>
              <li><code>and</code></li>
              <li><code>as</code></li>
              <li><code>assert</code></li>
              <li><code>async</code></li>
              <li><code>await</code></li>
              <li><code>break</code></li>
              <li><code>class</code></li>
            </ul>
            <ul>
              <li><code>continue</code></li>
              <li><code>def</code></li>
              <li><code>del</code></li>
              <li><code>elif</code></li>
              <li><code>else</code></li>
              <li><code>except</code></li>
              <li><code>False</code></li>
            </ul>
            <ul>
              <li><code>finally</code></li>
              <li><code>for</code></li>
              <li><code>from</code></li>
              <li><code>global</code></li>
              <li><code>if</code></li>
              <li><code>import</code></li>
              <li><code>in</code></li>
            </ul>
            <ul>
              <li><code>is</code></li>
              <li><code>lambda</code></li>
              <li><code>None</code></li>
              <li><code>nonlocal</code></li>
              <li><code>not</code></li>
              <li><code>of</code></li>
              <li><code>pass</code></li>
            </ul>
            <ul>
              <li><code>raise</code></li>
              <li><code>return</code></li>
              <li><code>True</code></li>
              <li><code>try</code></li>
              <li><code>while</code></li>
              <li><code>witch</code></li>
              <li><code>yield</code></li>
            </ul>
          </div>
          <p>A partir de Python 3.10 existen también <i>soft keywords</i>, palabras que son reservadas en ciertos contextos, pero que normalmente pueden ser usadas como nombres de variables. Estos identificadores son <code>match</code>, <code>case</code> y <code>_</code>.</p>
        </article>
      </section>
      <section class="main-section" id="Tipos_de_datos">
        <header>Tipos de datos </header>
        <article>
          <p>Los <i>tipos de datos básicos</i> se pueden resumir en esta tabla:</p>
          <table>
            <tbody>
              <tr>
                <th>Tipo</th>
                <th>Clase</th>
                <th>Notas</th>
                <th>Ejemplo</th>
              </tr>
              <tr>
                <td><code>str</code></td>
                <td>Cadena en determinado formato de codificación (<a href="https://es.wikipedia.org/wiki/UTF-8">UTF-8</a> por defecto)</td>
                <td>Inmutable</td>
                <td><code>'Cadena'</code></td>
              </tr>
              <tr>
                <td><code>bytes</code></td>
                <td><a href="https://es.wikipedia.org/wiki/Vector_(informática)">Vector</a> o array de bytes</td>
                <td>Inmutable</td>
                <td><code>b'Cadena'</code></td>
              </tr>
            </tbody>
          </table>
        </article>
      </section>
      <section class="main-section" id="Condicionales">
        <header>Condicionales </header>
        <article>
          <p>Una <a href="https://es.wikipedia.org/wiki/Sentencia_condicional">sentencia condicional</a> ejecuta su <a href="https://es.wikipedia.org/wiki/Bloque_de_código">bloque de código</a> interno solo si se cumple cierta condición. Se define usando la palabra clave <code>if</code> seguida de la condición y el bloque de código. Si existen condiciones adicionales, se introducen usando la palabra clave <code>elif</code> seguida de la condición y su bloque de código. Las condiciones se evalúan de manera secuencial hasta encontrar la primera que sea verdadera, y su bloque de código asociado es el único que se ejecuta. Opcionalmente, puede haber un bloque final (la palabra clave <code>else</code>, seguida de un bloque de código) que se ejecuta solo cuando todas las condiciones anteriores fueron falsas.</p>
          <code id="codigo">>>> verdadero = True
            >>> if verdadero:  <i># No es necesario poner "verdadero == True"</i>
            ...     print("Verdadero")
            ... else:
            ...     print("Falso")
            ...
            Verdadero
            >>> lenguaje = "Python"
            >>> if lenguaje == "C":  <i># lenguaje no es "C", por lo que este bloque se obviará y evaluará la siguiente condición</i>
            ...     print("Lenguaje de programación: C")
            ... elif lenguaje == "Python":  <i># Se pueden añadir tantos bloques "elif" como se quiera</i>
...     print("Lenguaje de programación: Python")
... else:  <i># En caso de que ninguna de las anteriores condiciones fuera cierta, se ejecutaría este bloque</i>
...     print("Lenguaje de programación: indefinido")
...
Lenguaje de programación: Python
>>> if verdadero and lenguaje == "Python":  <i># Uso de "and" para comprobar que ambas condiciones son verdaderas</i>
...     print("Verdadero y Lenguaje de programación: Python")
...
Verdadero y Lenguaje de programación: Python

          </code>
        </article>
      </section>
      
    </main>
  
  </body>
<html>

Solo me falta el test: " The first child of each .main-section should be a header element."

Estás teniendo problemas con la sintaxis de las etiquetas, revisa que todas tus etiquetas de cierre son correctas.
Ejemplo:

incorrecto:
<main>
<main>

correcto:
<main>
</main>

ejemplo:

incorrecto:
<main>
<main/>

correcto:
<main>
</main>

Lo anterior son solo ejemplos de los errores que tienes, no es necesariamente en esas etiquetas donde están los errores.
Como los elementos no están cerrando correctamente, afectan al momento de ejecutar las pruebas

Muchas gracias, lo voy a revisar detenidamente

1 Like