针对特定 CSS 格式问题的 CSS 响应网站

问题描述 投票:0回答:1

我一直在研究这个网站,现在我遇到了一个问题,使我的网站无法响应。 (我选择不使用CSS框架,这样我可以更好地理解CSS)。然而,我的大脑很混乱,我希望有人可以帮助我使这个页面在手机和平板电脑上响应。我还有一些 JavaScript 需要添加,但想尝试在 CSS 中完成以下任务:

  1. 顶部链接的汉堡菜单
  2. 适用于手机和平板电脑视图的响应式网站
  3. 我还将为每个链接添加模式来显示数据。我将自己解决这个问题,但如果您有任何初步步骤可以分享,我们也将不胜感激。

如有任何帮助,我们将不胜感激😩

这是我的代码的链接:https://codepen.io/YLCPapi/pen/YzdLVaW

CSS:

/* Google Fonts */
@import url("https://fonts.googleapis.com/css2?family=Lilita+One&display=swap");
/* font-family: 'Lilita One', cursive; */
@import url("https://fonts.googleapis.com/css2?family=Lilita+One&family=Lobster&display=swap");
/* font-family: 'Lobster', cursive; */

/* Global */
*{
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
}

body{
    background-color: rgb(155, 198, 233);
}

/* header */
h1{
    font-size: 60px;
    font-family: 'Lilita One', Cursive;
    color: white;
    margin: 0;
    margin-left: 15px;
}

.contactBar{
    display: flex;
    justify-content: space-between;
    padding: 100px;
}

.contactBar ul{
    list-style-type: none;
    display: flex;
    align-items: center;
}

.contactBar ul li{
    display: inline;
    margin-right: 65px;
    align-items: center;
}

a{
    text-decoration: none;
    font-family: Arial, Helvetica, sans-serif;
    color: white;
    font-weight: bold;
    font-size: 20px;
    transition: ease 0.3s, color 0.3s, box-shadow 0.3s;
}

a:hover{
    color: rgb(240, 240, 155);
}

/* Image section */
#midSection{
    display: flex;
    width: 50%;
    margin: auto;
    margin-top: 80px;
    margin-bottom: 150px;
    flex-direction: row-reverse;
}

.textSection{
    background-color: rgb(31, 31, 128);
    height: 368px;
    color: rgb(253, 252, 252);
    text-align: center;
    padding: 20px;
    border-radius: 15px 0px 0px 50px;
    box-shadow: 0px 12px 105px rgb(56, 149, 224);
    font-size: 20px;
    line-height: 30px;
}

.top{
    margin-bottom: 30px;
    margin-top: 20px;
    font

css responsive-design media-queries hamburger-menu
1个回答
0
投票

这就是我构建响应式网站的方式。

  1. 构建样式表以最初实现 mobile 视图。
  2. 添加 @media 规则,以在必要时以宽度递增的顺序覆盖更宽屏幕的各种样式。

我发现以下宽度在@media规则中最有用:

  1. 小于 500 像素:垂直握持手机的规则。不要对这些规则使用媒体查询。
  2. 500 像素或更多 - 水平放置手机所需的任何覆盖。使用
    @media (min-width: 500px)
  3. 750 像素或更多 - 垂直握持平板电脑所需的任何覆盖。使用
    @media (min-width: 750px)
  4. 1000 像素或更多 - 水平放置的平板电脑或桌面所需的任何覆盖。使用
    @media (min-width: 1000px)

这是一个快速示例。

body {
  background: black;
  margin: 1em;
}

img {
  max-width: 100%;
  border: 2px solid white;
  border-radius: 5px;
  box-sizing: border-box;
}

.d1 {
  display: grid;
  grid-template-columns: auto;
  gap: 1em;
}

@media (min-width: 500px) {
  .d1 {
    grid-template-columns: repeat(2, auto);
  }
}

@media (min-width: 750px) {
  .d1 {
    grid-template-columns: repeat(3, auto);
  }
}

@media (min-width: 1000px) {
  .d1 {
    grid-template-columns: repeat(4, auto);
  }
}
<div class="d1">
  <img src="https://picsum.photos/id/301/500/200">
  <img src="https://picsum.photos/id/302/500/200">
  <img src="https://picsum.photos/id/304/500/200">
  <img src="https://picsum.photos/id/305/500/200">
</div>

© www.soinside.com 2019 - 2024. All rights reserved.