教程链接:
    flask—模块继承 Link
    我爱Flask之Flask模板继承(你想要的这都有!!!) Link (更加详细)
    贴一下自己的代码:

    1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4. <!-- Bootstrap style -->
    5. <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-rTTiRUKnSWaDu2FjhzWFl8/JuUZMlplyWE/djenb2LoKqkgLGfEGfSrL7XDLoB1M" crossorigin="anonymous">
    6. <link rel="stylesheet" href="https://www.jq22.com/jquery/bootstrap-3.3.4.css">
    7. <link rel="stylesheet" href="https://www.jq22.com/jquery/font-awesome.4.6.0.css">
    8. <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/animate.css/3.2.0/animate.min.css">
    9. <link href="../static/css/animate.min.css" rel="stylesheet">
    10. <link href="../static/css/aos.css" rel="stylesheet">
    11. <!-- Main style-->
    12. <link href="../static/css/style.css" rel="stylesheet">
    13. <title>Document</title>
    14. </head>
    15. <body>
    16. <!-- header -->
    17. <header class="navbar-fixed-top">
    18. <nav>
    19. <ul>
    20. <li><a href="#about">About</a></li>
    21. <li><a href="#experience">experience</a></li>
    22. <li><a href="#projects">projects</a></li>
    23. <li><a href="#contact">contact</a></li>
    24. </ul>
    25. </nav>
    26. </header>
    27. <!-- ./header -->
    28. <!--重点在这里-->
    29. {% block content %}{% endblock %}
    30. <!-- jQuery -->
    31. <script src="https://www.jq22.com/jquery/jquery-1.10.2.js"></script>
    32. <!-- plugins -->
    33. <script src="https://www.jq22.com/jquery/bootstrap-3.3.4.js"></script>
    34. <!-- plotly js -->
    35. <script src='https://cdn.plot.ly/plotly-latest.min.js'></script>
    36. <!-- Local js -->
    37. <script src="../static/js/plugins.js"></script>
    38. <script src="../static/js/aos.js"></script>
    39. <script src="../static/js/jquery.validate.min.js"></script>
    40. <!-- main script -->
    41. <script src="../static/js/custom.js"></script>
    42. <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-Nj1D6pu2WnJojj+67GiU9ZFNwbl7bUWX5Kj5MS22C8bGjllemM9pvQyvj14zJb58" crossorigin="anonymous"></script>
    43. </body>
    44. </html>
    1. <!doctype html>
    2. <html>
    3. <head>
    4. <title>Home</title>
    5. </head>
    6. <body>
    7. {% extends 'layout.html' %}
    8. {% block content %}
    9. <!-- home -->
    10. <div class="section" id="home" data-stellar-background-ratio="0.5">
    11. <div class="container">
    12. <div class="disply-table">
    13. <div class="table-cell" data-aos="fade-up" data-aos-delay="0">
    14. <h4>Rain Dalio</h4>
    15. <h1>Data Analysis &<br /> Data science</h1> </div>
    16. </div>
    17. </div>
    18. </div>
    19. <!-- about -->
    20. <div class="section" id="about">
    21. <div class="container">
    22. <div class="col-md-6" data-aos="fade-up">
    23. <h4>01</h4>
    24. <h1 class="size-50">Know <br /> About me</h1>
    25. <div class="h-50"></div>
    26. <a href='/project01'>project</a>
    27. <p>text</p>
    28. <p>text</p>
    29. <div class="h-50"></div> <img src="img/Signature.svg" width="230" alt="" />
    30. <div class="h-50"></div>
    31. </div>
    32. <div class="col-md-6 about-img-div">
    33. <div class="about-border" data-aos="fade-up" data-aos-delay=".5"></div>
    34. <!-- img-->
    35. <img src="img/about-img.jpg" width="400" class="img-responsive" alt="" align="right" data-aos="fade-right" data-aos-delay="0" />
    36. </div>
    37. </div>
    38. </div>
    39. <!-- ./about -->
    40. <!-- experience -->
    41. <div class="section" id="experience">
    42. <div class="container">
    43. <div class="col-md-12">
    44. <h4>02</h4>
    45. <h1 class="size-50">My <br /> Experience</h1>
    46. <div class="h-50"></div>
    47. </div>
    48. <div class="col-md-12">
    49. <ul class="timeline">
    50. <li class="timeline-event" data-aos="fade-up">
    51. <label class="timeline-event-icon"></label>
    52. <div class="timeline-event-copy">
    53. <p class="timeline-event-thumbnail">April 2016 - Present</p>
    54. <h3>Geil,Danke! GmbH</h3>
    55. <h4>eines Web-Studios</h4>
    56. <p><strong>Projektmanagement mit Scrum</strong>
    57. <br>Ständiges Verbessern des agilen Entwicklungsprozesses beispielsweise durch Grunt, Yeoman, GIT, JIRA und BrowserStack.</p>
    58. </div>
    59. </li>
    60. <li class="timeline-event" data-aos="fade-up" data-aos-delay=".2">
    61. <label class="timeline-event-icon"></label>
    62. <div class="timeline-event-copy">
    63. <p class="timeline-event-thumbnail">November 2014 - Mars 2016</p>
    64. <h3>Freelancer</h3>
    65. <h4>Designer und Autor</h4>
    66. <p>Konzeption, Design und Produktion von Digitalen Magazinen mit InDesign, der Adobe Digital Publishing Suite und HTML5. Co-Autorin der Fachbücher "Digitales Publizieren für Tablets" und "Adobe Digital Publishing Suite" erschienen im dpunkt.verlag.</p>
    67. </div>
    68. </li>
    69. <li class="timeline-event" data-aos="fade-up" data-aos-delay=".4">
    70. <label class="timeline-event-icon"></label>
    71. <div class="timeline-event-copy">
    72. <p class="timeline-event-thumbnail">April 2014</p>
    73. <h3>konplan gmbh</h3>
    74. <h4>IT-Consultant</h4>
    75. <p><strong>Systemarchitektur, Consulting</strong>
    76. <br>Konzeption und Modellierung von Systemen und APIs für Digital Publishing und Entitlement nach SOA</p>
    77. </div>
    78. </li>
    79. </ul>
    80. </div>
    81. </div>
    82. </div>
    83. <!-- ./experience -->
    84. <!-- projects -->
    85. <div class="section" id="projects">
    86. <div class="container">
    87. <div class="col-md-12">
    88. <h4>03</h4>
    89. <h1 class="size-50">My <br /> Projects</h1>
    90. </div>
    91. <!-- main container -->
    92. <div class="main-container portfolio-inner clearfix">
    93. <!-- portfolio div -->
    94. <div class="portfolio-div">
    95. <div class="portfolio">
    96. <!-- portfolio_filter -->
    97. <div class="categories-grid wow fadeInLeft">
    98. <nav class="categories">
    99. <ul class="portfolio_filter">
    100. <li><a href="" class="active" data-filter="*">All</a></li>
    101. <li><a href="" data-filter=".photography">Photography</a></li>
    102. <li><a href="" data-filter=".logo">Logo</a></li>
    103. <li><a href="" data-filter=".graphics">Graphics</a></li>
    104. <li><a href="" data-filter=".ads">Advertising</a></li>
    105. <li><a href="" data-filter=".fashion">Fashion</a></li>
    106. </ul>
    107. </nav>
    108. </div>
    109. <!-- portfolio_filter -->
    110. <!-- portfolio_container -->
    111. <div class="no-padding portfolio_container clearfix" data-aos="fade-up">
    112. <!-- single work -->
    113. <div class="col-md-4 col-sm-6 fashion logo">
    114. <!--<a id="demo01" href="#about" class="portfolio_item"> <img src="../static/img/portfolio/01.jpg" alt="image" class="img-responsive" />
    115. <div class="portfolio_item_hover">
    116. <div class="portfolio-border clearfix">
    117. <div class="item_info"> <span>Mockups in seconds</span> <em>Fashion / Logo</em> </div>
    118. </div>
    119. </div>
    120. </a> -->
    121. <a href="/project01" class="portfolio_item"><img src="../static/img/portfolio/02.jpg" alt="image" class="img-responsive">
    122. <div class="portfolio_item_hover">
    123. <div class="portfolio-border clearfix">
    124. <div class="item_info"> <span>Mockups in seconds</span> <em>Fashion / Logo</em> </div>
    125. </div>
    126. </div>
    127. </a>
    128. </div>
    129. <!-- end single work -->
    130. <!-- single work -->
    131. <div class="col-md-4 col-sm-6 ads graphics">
    132. <!--<a id="demo02" href="www.baidu.com" class="portfolio_item"> <img src="../static/img/portfolio/01.jpg" alt="image" class="img-responsive" /> -->
    133. <a href="https://www.qries.com/" class="portfolio_item"><img src="../static/img/portfolio/02.jpg" alt="image" class="img-responsive"></a>
    134. <!--<div class="portfolio_item_hover">
    135. <div class="portfolio-border clearfix">
    136. <div class="item_info"> <span>Floating mockups</span> <em>Ads / Graphics</em> </div>
    137. </div>
    138. </div> -->
    139. </div>
    140. <!-- end single work -->
    141. <!-- single work -->
    142. <div class="col-md-4 col-sm-6 photography">
    143. <a id="demo03" href="#animatedModal" class="portfolio_item"> <img src="../static/img/portfolio/02.jpg" alt="image" class="img-responsive" />
    144. <div class="portfolio_item_hover">
    145. <div class="portfolio-border clearfix">
    146. <div class="item_info"> <span>Photorealistic smartwatch</span> <em>Photography</em> </div>
    147. </div>
    148. </div>
    149. </a>
    150. </div>
    151. <!-- end single work -->
    152. <!-- single work -->
    153. <div class="col-md-4 col-sm-6 fashion ads">
    154. <a id="demo04" href="#animatedModal" class="portfolio_item"> <img src="../static/img/portfolio/04.jpg" alt="image" class="img-responsive" />
    155. <div class="portfolio_item_hover">
    156. <div class="portfolio-border clearfix">
    157. <div class="item_info"> <span>Held by hands</span> <em>Fashion / Ads</em> </div>
    158. </div>
    159. </div>
    160. </a>
    161. </div>
    162. <!-- end single work -->
    163. <!-- single work -->
    164. <div class="col-md-4 col-sm-6 graphics ads">
    165. <a id="demo05" href="#animatedModal" class="portfolio_item"> <img src="../static/img/portfolio/05.jpg" alt="image" class="img-responsive" />
    166. <div class="portfolio_item_hover">
    167. <div class="portfolio-border clearfix">
    168. <div class="item_info"> <span>Mobile devices</span> <em>Graphics / Ads</em> </div>
    169. </div>
    170. </div>
    171. </a>
    172. </div>
    173. <!-- end single work -->
    174. <!-- single work -->
    175. <div class="col-md-4 col-sm-6 photography">
    176. <a id="demo06" href="#animatedModal" class="portfolio_item"> <img src="../static/img/portfolio/010.jpg" alt="image" class="img-responsive" />
    177. <div class="portfolio_item_hover">
    178. <div class="portfolio-border clearfix">
    179. <div class="item_info"> <span>Photorealistic smartwatch</span> <em>Photography</em> </div>
    180. </div>
    181. </div>
    182. </a>
    183. </div>
    184. <!-- end single work -->
    185. <!-- single work -->
    186. <div class="col-md-4 col-sm-6 graphics ads">
    187. <a id="demo07" href="#animatedModal" class="portfolio_item"> <img src="../static/img/portfolio/06.jpg" alt="image" class="img-responsive" />
    188. <div class="portfolio_item_hover">
    189. <div class="portfolio-border clearfix">
    190. <div class="item_info"> <span>Mobile devices</span> <em>Graphics / Ads</em> </div>
    191. </div>
    192. </div>
    193. </a>
    194. </div>
    195. <!-- end single work -->
    196. <!-- single work -->
    197. <div class="col-md-4 col-sm-6 graphics ads">
    198. <a id="demo08" href="#animatedModal" class="portfolio_item"> <img src="../static/img/portfolio/07.jpg" alt="image" class="img-responsive" />
    199. <div class="portfolio_item_hover">
    200. <div class="portfolio-border clearfix">
    201. <div class="item_info"> <span>Mobile devices</span> <em>Graphics / Ads</em> </div>
    202. </div>
    203. </div>
    204. </a>
    205. </div>
    206. <!-- end single work -->
    207. <!-- single work -->
    208. <div class="col-md-4 col-sm-6 graphics ads">
    209. <a id="demo09" href="#animatedModal" class="portfolio_item"> <img src="../static/img/portfolio/08.jpg" alt="image" class="img-responsive" />
    210. <div class="portfolio_item_hover">
    211. <div class="portfolio-border clearfix">
    212. <div class="item_info"> <span>Mobile devices</span> <em>Graphics / Ads</em> </div>
    213. </div>
    214. </div>
    215. </a>
    216. </div>
    217. <!-- end single work -->
    218. </div>
    219. <!-- end portfolio_container -->
    220. </div>
    221. <!-- portfolio -->
    222. </div>
    223. <!-- end portfolio div -->
    224. </div>
    225. <!-- end main container -->
    226. </div>
    227. </div>
    228. <!-- ./projects -->
    229. <!-- animatedModal -->
    230. <div id="animatedModal" class="popup-modal">
    231. <!--THIS IS IMPORTANT! to close the modal, the class name has to match the name given on the ID -->
    232. <div id="btn-close-modal" class="close-animatedModal close-popup-modal"> <i class="ion-close-round"></i> </div>
    233. <div class="clearfix"></div>
    234. <div class="modal-content">
    235. <div class="container">
    236. <div class="portfolio-padding">
    237. <div class="col-md-8 col-md-offset-2">
    238. <h2>Geschäfts Eines<br /> Web-Studios</h2>
    239. <div class="h-50"></div>
    240. <p>Appropriately maintain standards compliant total linkage with cutting-edge action items. Enthusiastically create seamless synergy rather than excellent value. Quickly promote premium strategic theme areas vis-a-vis.</p>
    241. <p>Appropriately maintain standards compliant total linkage with cutting-edge action items. Enthusiastically create seamless synergy rather than excellent value.</p>
    242. <br />
    243. <br /> <img src="img/portfolio/02.jpg" alt="" class="img-responsive" />
    244. <br />
    245. <br />
    246. <p>Appropriately maintain standards compliant total linkage with cutting-edge action items. Enthusiastically create seamless synergy rather than excellent value. Quickly promote premium strategic theme areas vis-a-vis.</p>
    247. <p>Appropriately maintain standards compliant total linkage with cutting-edge action items. Enthusiastically create seamless synergy rather than excellent value.</p>
    248. <br />
    249. <br /> </div>
    250. </div>
    251. </div>
    252. </div>
    253. </div>
    254. {% endblock %}
    255. </body>
    256. </html>