博客列表 >iframe和css基础知识

iframe和css基础知识

残破的蛋蛋
残破的蛋蛋原创
2020年12月12日 20:30:511049浏览

一、内联框架标签

HTML的内联框架元素<iframe>标签可以将其他的HTML页面嵌入到当前页面中。
内联框架的代码结构:

  1. <a href="www.abc.com" target="iframe"></a>
  2. <iframe src="" srcdoc="" frameborder="0" name="iframe"></iframe>
  • src 表示被嵌套的URL地址;
  • srcdoc 该属性可以是一段html代码,这些代码会被渲染到iframe中展示最终的样式。
  • name 与<a>标签和<form>标签的target属性可以配合使用,当点击对应的标签按钮时,可以跳转到点击的标签的URL地址。

拓展:使用iframe可以实现一个后台管理系统的菜单导航。

二、CSS基础语法

1.什么是CSS?
CSS全称:Cascading Style Sheets,中文名称叫层叠样式表。它是用来表示HTML、XML等文件 样式的计算机语言。

2.CSS相关术语:
CSS的规则由两个部分组成:

  • 选择器:由html元素构成;
  • 声明块:由一对“{…}”包裹的名、值对。

例如:

  1. <style>
  2. /* 声明块中的每一个名、值对,叫一个“样式声明” */
  3. h1 {
  4. /* 前景色 */
  5. color: green;
  6. font-weight: 200;
  7. }
  8. </style>
  9. <header class="page-header">
  10. <h1 id="page-title" class="title" style="color: green;">Web全栈开发入门课程</h1>
  11. <h2 id="page-title">大家晚上好,我是Hello World!</h2>
  12. </header>

效果如下:

在Chrome浏览器中,通过F12打开控制台工具,通过选择工具选中h1标签,我们可以看到一个元素的样式会受到四个级别的影响:

  • 继承的:根据元素在文档的结构和层级关系来确定它的最终样式;

  • 浏览器客户端:用户代理样式(user agent style),基本上浏览器的表现样式都是一致的;

  • 用户自定义:写在HTML文档<style>标签中的样式;

  • 行内样式(内联样式):写在元素的style属性中的样式。

3.CSS层叠与优先级

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>CSS层叠与优先级</title>
  7. <!-- 如果CSS样式仅仅用来控制当前页面的元素,我们就用style标签写在当前页面中。 -->
  8. <style>
  9. /* CSS(Cascading Style Sheets):层叠样式表 */
  10. /* 1.标签选择器 */
  11. h1 {
  12. color: green;
  13. }
  14. /* 2.属性选择器 */
  15. /* *:表示所有元素(标签) */
  16. *[class="title"] {
  17. color: hotpink;
  18. }
  19. h1[class="title"] {
  20. color: indigo;
  21. }
  22. h2[class="title"] {
  23. color: mediumslateblue;
  24. }
  25. /* 3.类选择器 */
  26. /* .title {
  27. color: lawngreen;
  28. } */
  29. /* 4.id选择器 */
  30. /* #page-title {
  31. color: lightseagreen;
  32. } */
  33. /* 标签选择器 < 类选择器 < id选择器 < 行内样式 */
  34. </style>
  35. </head>
  36. <body>
  37. <header class="page-header">
  38. <h1 id="page-title" class="title">Web全栈开发入门课程</h1>
  39. <h2 id="page-title" class="title">大家晚上好,我是Hello World!</h2>
  40. </header>
  41. </body>
  42. </html>

效果图:

由上述例子可以看出CSS的优先级是:

标签选择器 < 类选择器 < id选择器 < 行内样式

其中行内元素的优先级别是最高的,这点是需要注意的,其实这个优先级从控制台也是能看出来的,如下图:

作业:

  • 使用iframe标签写一个简易的后台管理系统:
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>使用iframe写一个简易的后台管理系统</title>
  7. <style>
  8. body {
  9. display: grid;
  10. grid-template-columns: 10em 1fr;
  11. margin: 0;
  12. }
  13. .header {
  14. height: 4em;
  15. line-height: 4em;
  16. background-color: #393D49;
  17. grid-column: span 2;
  18. color: #ffffff;
  19. text-align: center;
  20. font-weight: bold;
  21. }
  22. .aside {
  23. display: grid;
  24. grid-template-rows: repeat(auto-fit, 4.8em);
  25. background-color: #393D49;
  26. }
  27. .aside a {
  28. display: block;
  29. height: 4.8em;
  30. line-height: 4.8em;
  31. border-bottom: 1px solid #666;
  32. padding-left: 1em;
  33. transition: all 0.4s;
  34. }
  35. .aside a:hover {
  36. background-color:#009688;;
  37. }
  38. iframe {
  39. width: 100%;
  40. min-height: 68em;
  41. padding-left: 30px;
  42. border: none;
  43. background-color: #ffffff;
  44. }
  45. .footer {
  46. display: gird;
  47. grid-column: span 2;
  48. background-color: #393D49;
  49. }
  50. .footer ul {
  51. display: flex;
  52. }
  53. .footer ul li {
  54. list-style: none;
  55. padding-left: 1em;
  56. }
  57. .footer ul li a {
  58. color: #c8cdd2;
  59. font-size: 0.8em;
  60. }
  61. a {
  62. text-decoration: none;
  63. color: #c8cdd2;
  64. }
  65. a:hover {
  66. color: #ffffff;
  67. }
  68. </style>
  69. </head>
  70. <body>
  71. <!-- 头部 -->
  72. <div class="header">后台管理系统</div>
  73. <!-- 侧边栏导航 -->
  74. <div class="aside">
  75. <a href="../20201209/demo1.html" target="box">后台首页</a>
  76. <a href="../20201209/demo2.html" target="box">商品列表</a>
  77. <a href="../20201209/demo3.html" target="box">课程表</a>
  78. <a href="../20201209/demo8.html" target="box">表单元素</a>
  79. </div>
  80. <!-- 主体-->
  81. <div class="container">
  82. <iframe srcdoc="请单击左侧按钮" frameborder="0" name="box"></iframe>
  83. </div>
  84. <!-- 页尾 -->
  85. <div class="footer">
  86. <ul>
  87. <li><a href="" target="_blank">PHP视频</a></li>
  88. <li><a href="" target="_blank">网站首页</a></li>
  89. <li><a href="" target="_blank">PHP实战</a></li>
  90. <li><a href="" target="_blank">PHP代码</a></li>
  91. <li><a href="" target="_blank">PHP手册</a></li>
  92. <li><a href="" target="_blank">词条手记</a></li>
  93. <li><a href="" target="_blank">编程词典</a></li>
  94. <li><a href="" target="_blank">php培训</a></li>
  95. </ul>
  96. </div>
  97. </body>
  98. </html>

效果图:

  • CSS来源:
  1. 继承父级的

  2. 用户代理样式

  3. 自定义样式

  4. 行内样式

由以上案例可以看出来这4个来源的优先级是:

继承父级的样式 < 用户代理样式 < 自定义样式 < 行内样式

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议