前端案例:Alloy Team|腾讯全端项目(响应式)

news2024/12/23 10:15:27

前言

这是一个简单的响应式项目,模仿了Alloy Team|腾讯全端部分内容,模拟了可以适应不同类型的设备

项目总览

整体布局

屏幕大于1200px概况:

头部标签hover + 轮播图

屏幕在小于992px概况

头部背景变色 + 固定

屏幕在小于992px概况

屏幕大于768px,小于992px概况

主体部分

屏幕小于768px概况

源码

HTML(index.html)代码

此项目引入的是 Bootstrap框架的CSS、JS、font(图标)代码,需框架代码可在官网自行下载

Bootstrap框架v5中文官网:Bootstrap 入门 · Bootstrap v5 中文文档 v5.3 | Bootstrap 中文网 (bootcss.com)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>AlloyTeam|腾讯全端 AlloyTeam 团队</title>
    <!-- 层叠性:我们的css 要 层叠 框架的 -->
    <link rel="stylesheet" href="./Bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="./Bootstrap/font/bootstrap-icons.min.css">
    <link rel="stylesheet" href="./css/index.css">
</head>
<body>
    <!-- 导航开始 -->
    <nav class="navbar navbar-expand-lg bg-body-tertiary fixed-top">
        <div class="container">
          <a class="navbar-brand" href="#"><img src="./assets/images/logo.svg" alt=""></a>
          <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler bi-list"></span>
          </button>
          <div class="collapse navbar-collapse" id="navbarNav">
            <ul class="navbar-nav">
              <li class="nav-item">
                <a class="nav-link active" aria-current="page" href="#">首页</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" href="#">博客</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" href="#">Github</a>
              </li>
              <li class="nav-item">
                <a class="nav-link hot" href="#">TWeb Conf</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" href="#">SuperStar</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" href="#">Web前端导航</a>
              </li>
              <li class="nav-item">
                <a class="nav-link" href="#">关于</a>
              </li>
            </ul>
          </div>
        </div>
    </nav>
    <!-- 导航结束 -->

    <!-- 轮播图 -->
    <div id="carouselExampleIndicators" class="carousel slide" data-bs-ride="carousel">
        <div class="carousel-indicators">
          <button type="button" data-bs-target="#carouselExampleIndicators" data-bs-slide-to="0" class="active" aria-current="true" aria-label="Slide 1"></button>
          <button type="button" data-bs-target="#carouselExampleIndicators" data-bs-slide-to="1" aria-label="Slide 2"></button>
          <button type="button" data-bs-target="#carouselExampleIndicators" data-bs-slide-to="2" aria-label="Slide 3"></button>
          <button type="button" data-bs-target="#carouselExampleIndicators" data-bs-slide-to="3" aria-label="Slide 4"></button>
        </div>
        <div class="carousel-inner">
          <div class="carousel-item active" data-bs-interval="3000"></div>
          <div class="carousel-item" data-bs-interval="3000"> </div>
          <div class="carousel-item" data-bs-interval="3000"></div>
          <div class="carousel-item" data-bs-interval="3000"></div>
        </div>
    </div>

    <!-- 开源项目 -->
    <div class="project container">
      <!-- 标题 -->
      <div class="title">
        <span class="txt">
          <span>OpenSource</span>
          <span>/</span>
          开源项目
        </span>
        <p>种类众多的开源项目,让你爱不释手</p>
      </div>

      <!-- 内容 -->
      <div class="content">
        <div class="row">
          <div class="col-lg-3 col-md-6"><a href="#">
            <img src="./assets/uploads/omi-1.png" alt="">
            <h3>OMI</h3>
            <p>开放现代的Web组件化框架</p>
          </a></div>
          <div class="col-lg-3 col-md-6"><a href="#">
            <img src="./assets/uploads/alloyimage-2.png" alt="">
            <h3>AlloyImage</h3>
            <p>HTML5专业级图像处理引擎</p>
          </a></div>
          <div class="col-lg-3 col-md-6"><a href="#">
            <img src="./assets/uploads/alloytouch-3.png" alt="">
            <h3>AlloyTouch</h3>
            <p>丝般顺滑的触摸运动方案</p>
          </a></div>
          <div class="col-lg-3 col-md-6"><a href="#">
            <img src="./assets/uploads/sodalogo-4.png" alt="">
            <h3>Soda</h3>
            <p>高性能模版引擎</p>
          </a></div>
        </div>
      </div>

      <!-- 更多开源 -->
      <div class="more">
        <a href="#" class="btn btn-default btn-lg">更多开源 ></a>
      </div>
    </div>

    <script src="./Bootstrap/js/bootstrap.min.js"></script>
</body>
</html>

CSS样式(index.css)代码:

@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}
.bg-body-tertiary {
  background-color: transparent !important;
}
.bg-body-tertiary .navbar-brand img {
  width: 200px;
  height: 39px;
}
.bg-body-tertiary .navbar-toggler {
  border: 1px solid transparent;
}
.bg-body-tertiary .navbar-toggler:focus {
  box-shadow: none;
}
.bg-body-tertiary .bi-list {
  font-size: 30px;
  color: #fff;
}
@media (max-width: 992px) {
  .bg-body-tertiary .navbar-collapse {
    position: absolute;
    left: 0;
    top: 60px;
    width: 100%;
    background: #26282c;
  }
}
.bg-body-tertiary .navbar-collapse {
  flex-grow: 0;
}
.bg-body-tertiary .navbar-nav .nav-item a {
  text-align: center;
}
.bg-body-tertiary .navbar-nav .nav-link.active {
  color: #f2b535;
}
.bg-body-tertiary .navbar-nav .nav-link.hot::before {
  content: "";
  display: inline-block;
  position: relative;
  top: 2px;
  left: -2px;
  width: 13px;
  height: 15px;
  background: url(../assets/images/hot-32d.png) 50% no-repeat;
  background-size: 100% 100%;
}
.bg-body-tertiary .navbar-nav .nav-link.hot {
  background-image: -webkit-linear-gradient(left, #cddc39, #ff9800 25%, #cddc39 50%, #ff9800 75%, #cddc39) !important;
  -webkit-text-fill-color: transparent !important;
  -webkit-background-clip: text !important;
  -webkit-background-size: 200% 100% !important;
  -webkit-animation: masked-animation 2s infinite linear !important;
}
.bg-body-tertiary .navbar-nav .nav-link {
  color: hsla(0, 0%, 100%, 0.65);
}
.bg-body-tertiary .navbar-nav .nav-link:hover {
  color: #f2b535;
}
@media (max-width: 992px) {
  .bg-body-tertiary {
    background-color: #26282c !important;
  }
}
@media (max-width: 768px) {
  .carousel .carousel-indicators [data-bs-target] {
    width: 30px;
  }
}
@media (min-width: 768px) {
  .carousel .carousel-indicators [data-bs-target] {
    width: 50px;
  }
}
.carousel .carousel-indicators [data-bs-target] {
  margin-right: 5px;
  margin-left: 5px;
  height: 4px;
}
@media (max-width: 768px) {
  .carousel .carousel-item {
    height: 250px;
  }
}
@media (min-width: 768px) {
  .carousel .carousel-item {
    height: 400px;
  }
}
@media (min-width: 992px) {
  .carousel .carousel-item {
    height: 500px;
  }
}
.carousel .carousel-item {
  background-size: cover;
  background-position: center;
}
.carousel .carousel-item:nth-child(1) {
  background-image: url(../assets/images/banner_1.jpg);
}
.carousel .carousel-item:nth-child(2) {
  background-image: url(../assets/images/banner_2.jpg);
}
.carousel .carousel-item:nth-child(3) {
  background-image: url(../assets/images/banner_3.jpg);
}
.carousel .carousel-item:nth-child(4) {
  background-image: url(../assets/images/banner_4.jpg);
}
.project {
  margin-top: 60px;
  text-align: center;
}
.project .title .txt {
  font-weight: 500;
  font-size: 30px;
  color: #494d55;
}
.project .title .txt span {
  font-family: Segoe UI Light, Microsoft YaHei, Arial, Helvetica, sans-serif;
}
.project .title p {
  margin-top: 10px;
  margin-bottom: 20px;
  font-size: 16px;
  color: #919191;
}
.project .row div {
  height: 200px;
}
.project .row div a {
  display: block;
  padding: 20px 10px;
  margin-bottom: 10px;
  height: 190px;
  background-color: aqua;
  text-decoration: none;
  color: #fff;
  border-radius: 4px;
  overflow: hidden;
}
.project .row div a img {
  height: 60px;
}
.project .row div a h3 {
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 24px;
}
.project .row div a:hover {
  transform: translateY(-6px);
  -webkit-transform: translateY(-6px);
  -moz-transform: translateY(-6px);
  box-shadow: 0 26px 40px -24px rgba(0, 36, 100, 0.5);
  -webkit-box-shadow: 0 26px 40px -24px rgba(0, 36, 100, 0.5);
  -moz-box-shadow: 0 26px 40px -24px rgba(0, 36, 100, 0.5);
}
.project .row div:nth-child(1) a {
  background-color: #70c3ff;
}
.project .row div:nth-child(2) a {
  background-color: #fd6a7f;
}
.project .row div:nth-child(3) a {
  background-color: #7f8ea0;
}
.project .row div:nth-child(4) a {
  background-color: #89d04f;
}
.project .more {
  display: block;
  margin: 0 auto;
  text-align: center;
  padding: 10px;
  border: 1px solid #fff;
  box-shadow: 6px 6px 0 #fff;
  width: 200px;
  cursor: pointer;
}
.project .more a {
  background-color: #e1e1e1;
  color: #616161;
  font-weight: 400;
  font-size: 14px;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2044737.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于YOLOv8的手部检测(1)- 手部数据集获取(数据集下载、数据清洗、处理与增强)

前言 在进行手部姿态估计、手势识别时&#xff0c;需要先检测出手的位置。本文对网上公开的手部数据集进行获取、清洗、处理与数据增强&#xff0c;用于YOLO等目标检测网络的训练。 1.手部检测数据集概览 1.1 HaGRID手势识别数据集 项目地址&#xff1a; https://github.com/…

[C++] STL (multi)map/(multi)set简介

标题&#xff1a;[C] STL (multi)map/(multi)set简介 水墨不写bug 目录 前言&#xff1a; 一、set简介 1.set简介 2.set的常见用法 二、map简介 1.map简介 2.map使用 三、multiset简介 1.multiset简介 2.multiset使用 四、multimap简介 1.multimap简介 2.multim…

DVWA-IDS测试(特殊版本)

起因 浏览DVWA历史更新记录发现有版本带有IDS插件&#xff0c;可以用于平时没有相关设备等场景演示用&#xff0c;所以开启本次测试。 下载 官方最新版本是移除了IDS插件&#xff0c;原因是“从不使用”&#xff0c;所以需要下载移除该插件之前的版本。 https://github.com/…

【QuikGraph】图算法之Prim最小生成树求解

介绍 最小生成树概念与算法介绍 QuikGraph的PrimMinimumSpanningTreeAlgorithm的API地址 示例 测试代码&#xff1a; using Microsoft.VisualStudio.TestTools.UnitTesting; using QuikGraph; using QuikGraph.Algorithms.MinimumSpanningTree; using QuikGraph.Algorithm…

【Python 滑块图片复原】将steam蒸汽平台混乱的滑块背景图复原

文章日期&#xff1a;2024.08.16 使用工具&#xff1a;Python 文章类型&#xff1a;复原steam蒸汽平台里的滑块图片 文章全程已做去敏处理&#xff01;&#xff01;&#xff01; 【需要做的可联系我】 AES解密处理&#xff08;直接解密即可&#xff09;&#xff08;crypto-js…

【ElementUI】el-table值相同时合并行

效果图&#xff1a; 大致思路&#xff1a;el-table里添加合并行或列的计算方法span-method <el-table :data"tableList" :span-method"objectSpanMethod"> // 在获取到列表数据tableData后调用此方法 handleTableData(tableData) {let rowSpanArr …

探索JUnit源码:揭秘编程高手的秘密武器

摘要 本文将带领读者深入探索JUnit测试框架的源码&#xff0c;揭示其中蕴含的编程智慧和技巧。通过分析JUnit的实现原理&#xff0c;我们将学习到如何编写高质量、可维护的代码&#xff0c;并掌握一些高级编程技巧。 引言 在软件开发的世界里&#xff0c;测试是保证代码质量…

使用electron-vite创建桌面应用

使用electron-vite创建桌面应用 一、框架搭建二、项目目录三、preload.js解读 一、框架搭建 官网地址https://cn.electron-vite.org npm create quick-start/electronlatest按步骤操作即可 二、项目目录 1、main 主进程窗口&#xff1a;存放窗口代码 2、preload 预加载模块…

项目代码全自动国际化翻译工具

项目代码全自动国际化翻译工具 在当今全球化的时代&#xff0c;软件的国际化已不再是可选项&#xff0c;而是必需品。为了使软件能够覆盖更广泛的用户群体&#xff0c;支持多语言已成为每个开发团队的重要目标之一。然而&#xff0c;处理项目中的国际化问题并非易事&#xff0…

基于深度学习的图像特征优化识别复杂环境中的果蔬【多种模型切换】

文章目录 有需要本项目的代码或文档以及全部资源&#xff0c;或者部署调试可以私信博主项目介绍图像特征优化方法模型原理及实验对比模型训练每文一语 有需要本项目的代码或文档以及全部资源&#xff0c;或者部署调试可以私信博主 项目介绍 基于深度学习的图像识别技术广泛应…

企业发展与数字化转型:创新驱动未来增长的关键策略

引言 在当今全球化和信息化高度融合的时代&#xff0c;数字化转型已经成为企业寻求增长和保持竞争优势的关键战略。随着技术的飞速进步&#xff0c;数字化不仅改变了商业模式和市场格局&#xff0c;还深刻影响了企业的内部运作和外部生态系统。大数据、人工智能、物联网等新兴技…

【免费】企业级大模型应用推荐:星环科技无涯·问知

无涯问知是星环科技发布的大模型应用系统&#xff0c;那么我们先简单了解下星环科技吧&#xff01; 星环科技&#xff08;股票代码&#xff1a;688031&#xff09;致力于打造企业级大数据和人工智能基础软件&#xff0c;围绕数据的集成、存储、治理、建模、分析、挖掘和流通等数…

【保姆级教程】用pycharm连接远程数据库,并用sql语句进行增添语句

1.远程连接 检查是否连接成功 然后就能连接成功了。 2.可视化 双击&#xff0c;即可查看该表&#xff0c;左侧应该显示详细信息&#xff0c;类似navicat 3.增删改查&#xff08;前提&#xff1a;你有权限&#xff09; 3.1.非语句版 双击进行修改 点击箭头保存提交 3.2 sql语…

4.2 数据定义语言(DDL)

欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;欢迎订阅相关专栏&#xff1a; 工&#x1f497;重&#x1f497;hao&#x1f497;&#xff1a;野老杂谈 ⭐️ 全网最全IT互联网公司面试宝典&#xff1a;收集整理全网各大IT互联网公司技术、项目、HR面试真题.…

spring data:spring-data-jdbc spring-data-relational 源码解析 (2)

文章目录 简介项目特点解决的主要问题关联的项目如何引入到项目工程中源码分析框架 最近这几年在做数据中台相关的项目&#xff0c;有个技术点就是要支持多款数据库&#xff0c;尤其是一些国产数据库&#xff0c; sql 语法多样&#xff0c;如何做统一就是一个我们面临的一个难题…

采购oled全透明显示屏需要注意什么

采购OLED全透明显示屏时&#xff0c;需要注意以下几个方面以确保选择到符合需求的高品质产品&#xff1a; 一、明确需求与预算 应用场景&#xff1a;首先明确OLED全透明显示屏将用于何种场景&#xff0c;如零售展示、展览展示、智能家居、车载显示等&#xff0c;以便选择合适的…

前端新手必看:掌握CSS样式优先级和!important,让你的样式不再冲突!(CSS优先级和!important的用法)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 CSS样式优先级 📒📝 CSS样式优先级基础📝 选择器的特异性(Specificity)📝 源(Source)顺序🚀 !important的使用📝 使用!important的场景📝 如何使用!important🚧 注意事项与最佳实践📝 替代方法⚓️ 相关链…

【最新CUDA安装教程2024】手把手教你安装/更新cuda(2024版)

【最新CUDA安装教程2024】手把手教你安装/更新cuda(2024版) 需要更新的看这里(如果单纯安装的话请跳过)查看电脑的cuda版本与其支持的cuda版本删除旧版本需要安装的看这里进入官网cudnn安装测试一下配置一下设备:Legion Y9000P IAH7H系统:Win11CPU:12th Gen Intel Core™…

Android 实现动态换行显示的 TextView 列表

在开发 Android 应用程序时&#xff0c;我们经常需要在标题栏中显示多个 TextView&#xff0c;而这些 TextView 的内容长度可能不一致。如果一行内容过长&#xff0c;我们希望它们能自动换行&#xff1b;如果一行占不满屏幕宽度&#xff0c;则保持在一行内。本文将带我们一步步…