html - 我的页脚 <a> 标签上的样式只有在我向上面的表单添加填充时才有效,为什么?

标签 html css

问题是当我为 <a> 设置样式时页脚中列表的标记,即使设置正确以应用样式,也不会发生任何事情。但是,如果我在代码的主要部分向表单添加填充,更改会突然显示在页脚的链接上。

我提供了一个 JSfiddle ( https://jsfiddle.net/wk47q0en/ ),只需转到 css 中的第 56 行并注释掉/删除添加到表单中的随机填充,页脚样式就会消失。我想知道为什么会这样。

如果你想知道,是的,我是 HTML 和 CSS 的新手,这是一些家庭作业的一部分 :D 提前感谢任何有助于解决这个问题的建议。

https://jsfiddle.net/wk47q0en/

HTML

 <meta charset="utf-8">
    <title>Red Pepper Pizza</title>
    <link rel="stylesheet" href="style.css">
  </head>
  <body>

    <div class="topmenu">
      <nav>
        <ul>
          <li><a href="#">Home</a></li>
          <li><a href="#">Menu</a></li>
          <li><a href="#">Weekly deals</a></li>
          <li><a href="#">Resturants</a></li>
          <li><a href="#">Contact us</a></li>
        </ul>
      </nav>
  </div>

  <form action="example.htm" method="get">
    <fieldset>
      <legend>Order your pizza below</legend>
      <select name="Pizza" id="Pizza">
        <option value="selected" selected>Choose a pizza</option>
        <option value="Pepperoni">Pepperoni</option>
        <option value="Ham">Ham</option>
        <option value="Vegan">Vegan</option>
        <option value="Margarita">Margarita</option>
      </select>

      <p>Choose your Pizza crust</p>
      <input type="radio" name="Crust" value="Thick"> Thick
      <input type="radio" name="Crust" value="Thin"> Thin

      <p>Extra toppings</p>
      <input type="checkbox" name="Toppings" value="Onions"> Onions
      <input type="checkbox" name="Toppings" value="Salmon"> Salmon
      <input type="checkbox" name="Toppings" value="Garlic"> Garlic
      <input type="checkbox" name="Toppings" value="Olives"> Olives
      <input type="checkbox" name="Toppings" value="Chilli"> Chilli
      <input type="checkbox" name="Toppings" value="Peppers"> Peppers

      <textarea name="comment" rows="8" cols="62"> Additional specifications...</textarea> <br>

      <input type="submit" name="order" value="order">
      </fieldset>
  </form>

    <footer>
        <div class="footermenu">
           <ul class="footlist">
             <li><a href="#">Contact us</a></li>
             <li><a href="#">Privacy</a></li>
             <li><a href="#">Job oppertunities</a></li>
             <li><a href="#">Allergens</a></li>
             <li><a href="#">Blog</a></li>
           </ul>
       </div>
      </footer>
      </body>
    </html>

CSS

    /* body etc */
    @font-face {
    font-family: 'Roboto', sans-serif;
    src: url(assets\RobotoFont\Roboto-Regular.ttf);
    }

    body {
      font-family: 'Roboto', sans-serif;
      margin: 0;
      padding: 0px 10px;
    }

    /* Navigation/topbar/sidebar */

    ul {
      margin: 0px 0px 0px 0px;
      list-style-type: none;
    }

    li {
      display: inline;
    }


    .topmenu {
      width: 100%;
      background-color: #d12d17;
      height: 40px;
      text-align: center;
      margin-top: 0px;
      padding-top: 0px;
    }


    .topmenu a {
      display: inline-block;
      height: 40px;
      color: black;
      text-decoration: none;
      font-size: 19px;
      font-weight: bold;
      padding: 10px 25px;

    }

    .topmenu a:hover {
      transform: scale(1.3); }
    }


    /*Header and intro*/




    /* Form elements*/

    form {
      padding: 0 50%;
    }



/*footer */

.footlist a {
  display: inline-block;
  height: 40px;
  color: black;
  text-decoration: none;
  font-size: 15px;
}

最佳答案

您的 CSS 代码在第 48 行有一个错误。您多了一个大括号。当您在第 58 行设置表单元素的样式时,由于错误,该值实际上并未应用,但后面元素的样式正常工作。当您删除表单元素样式时,错误会影响紧随其后的样式元素,即页脚中的 a 元素。

关于html - 我的页脚 <a> 标签上的样式只有在我向上面的表单添加填充时才有效,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58465309/

相关文章:

javascript - 获取在新窗口中打开的文本框值

html - 将第一个字母定位为外部列表样式

javascript - 使 div 'fullscreen' onClick 一个按钮?

html - 为什么是:hover does not work for the specified class

CSS url() 函数 : Browser support

html - 表格使 <td> 响应

javascript - 如何加载外部 HTML 文件

html - CSS 过渡不适用于 Show-More

html - 上传到主机后我的网站看起来不一样

java - 有没有办法在 javascript 中验证表单以停止 onSubmit() java 方法触发?