{
  "schemaVersion": "1.0",
  "entity": "BlogPosting",
  "title": "Loose vs. Tight Lists in Markdown",
  "description": "Learn the difference between loose and tight Markdown lists, why a single blank line changes how list items render, and how to fix accidental paragraph wrapping.",
  "author": "vd",
  "datePublished": "2026-07-15T00:00:00.000Z",
  "dateModified": "2026-07-15T00:00:00.000Z",
  "tags": [
    "Markdown",
    "Tutorial"
  ],
  "aeoDirectAnswers": [
    {
      "question": "What Is a Tight List?",
      "answer": "A tight list has no blank lines separating its items. Content inside each item renders directly, without being wrapped in paragraph tags. This renders compactly: First item"
    },
    {
      "question": "What Is a Loose List?",
      "answer": "A loose list has at least one blank line between two of its items. This changes how every item in that list renders, not just the ones next to the blank line. This renders with visible spacing between items: First item"
    },
    {
      "question": "Why Does This Matter in Practice?",
      "answer": "The most common real-world surprise is writing a list where you added blank lines purely for readability in the source file, not realizing it would add visible spacing to the rendered page. If a tightly-packed list suddenly looks like it has extra gaps between items, check for a stray blank line. Because of the blank line before the third item, this entire list renders loose, spacing out all three items even though only one gap was added in the source. ---"
    },
    {
      "question": "How Do I Force a List to Stay Tight?",
      "answer": "Remove every blank line between items. If you need a paragraph of explanation inside one item without affecting the others, indent it under that item instead of leaving a blank line before the next list marker. A blank line is required to start a paragraph nested inside a list item (as shown above), and that alone doesn't make the outer list loose. What makes a list loose is a blank line sitting directly between two sibling list markers. ---"
    },
    {
      "question": "Does this apply to both ordered and unordered lists?",
      "answer": "Yes. The tight/loose distinction is a property of list blocks in general, and applies the same way regardless of whether the markers are -, *, +, or numbers."
    },
    {
      "question": "Can I mix tight and loose sections in the same document?",
      "answer": "Yes, as separate lists. Two lists separated by a non-list paragraph or heading are independent blocks, so one can be tight and the other loose without affecting each other."
    },
    {
      "question": "Does looseness change how task list checkboxes render?",
      "answer": "Not usually. GFM task list checkboxes render the same either way; looseness mainly affects whether the text content is wrapped in a paragraph tag, not the checkbox itself. ---"
    },
    {
      "question": "What to Read Next",
      "answer": "Markdown List Guide: Ordered and Unordered Lists — Review the base list syntax this article builds on. Horizontal Rules & Line Breaks in Markdown — Learn another case where blank lines and spacing change how content is parsed."
    }
  ],
  "semanticFactualBody": "Two lists that look almost identical in the raw Markdown source can render with noticeably different spacing on the page. The difference usually comes down to a single blank line between items, something the list guide in this series doesn't cover. This article explains the loose-vs-tight distinction, why it exists, and how to control it deliberately instead of running into it by accident.  tags; loose list item content gets wrapped in  tags.\",   \"A loose list adds visible vertical spacing between items compared to a tight list.\",   \"Adding just one blank line anywhere in a list is enough to make the entire list loose.\" ]} /> --- What Is a Tight List? A tight list has no blank lines separating its items. Content inside each item renders directly, without being wrapped in paragraph tags. This renders compactly: First item Second item Third item The HTML output has no ` tags inside the list items: --- What Is a Loose List? A loose list has at least one blank line between two of its items. This changes how every item in that list renders, not just the ones next to the blank line. This renders with visible spacing between items: First item Second item Third item The HTML output wraps each item's content in  tags: CommonMark determines looseness for the entire list block, not per item. If even one pair of adjacent items has a blank line between them, every item in that list gets the loose -wrapped treatment, even the items that don't have blank lines next to them. --- Why Does Thi"
}