Non-semantic HTML refers to HTML elements that don't convey any information about their content. Elements like <div> and <span> are considered non-semantic because they don't describe the role or meaning of the enclosed content. They are often used for styling or layout purposes rather than providing any semantic information.