html - razor div 跳过 css::after

标签 html css asp.net-mvc razor partial-views

这是我的 MVC 局部 View ,

  <p class="contain mutliOptions method" id="paymentOptions">                                       
      @Html.Partial(MVC.Payment.Views._PaymentMethods, Model)
  </p> 

当它呈现 View 中的元素时,呈现在 p 标签之外,如下所示,

enter image description here

为什么突出显示的 div 会跳到 div 之外,知道吗?

最佳答案

问题其实起源于<p> tag 是一个 block 级元素,它启用“标签省略”,如果在匹配结束标签 </p> 之前找到下面提到的这些元素,它会自动省略结束标签并自行关闭。 :

  • <address>
  • <article>
  • <aside>
  • <blockquote>
  • <div>
  • <dl>
  • <fieldset>
  • <footer>
  • <form>
  • <h1><h6>
  • <header>
  • <hr>
  • <menu>
  • <nav>
  • <ol>
  • <pre>
  • <section>
  • <table>
  • <ul>
  • 另一个<p>元素

因此,这意味着上面的那些 block 元素不能嵌套在<p> 中。元素。

与其使用段落标记嵌套上述其他元素,不如使用<div>。嵌套标签 <div>小号:

<div class="contain mutliOptions method" id="paymentOptions">                                       
    @Html.Partial(MVC.Payment.Views._PaymentMethods, Model)
</div> 

引用:

The HTML paragraph element (MDN)

关于html - razor div 跳过 css::after,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54439504/

相关文章:

php - 添加购物车的错误函数

javascript - jQuery 删除/添加类只能工作一次

java - 根据 MIME 类型为每个文件提供适当的 html5 标签,以显示在 html+bootstrap 模板中

asp.net - 对包括网站在内的所有内容都使用 Web API?

asp.net-mvc - T4MVC 不支持 DisplayTemplates 和 EditorTemplates

c# - 在 ASP.Net MVC 的 View 模型中验证嵌套模型

javascript - 使用ajax刷新网络摄像头图像

javascript - CSS3动画: How to animate to from paused position to reset position?

javascript - 如何根据下拉选项显示隐藏的下拉菜单

html - 可以将 anchor 标记设置为 block 元素吗?