SVG实现导航动画

效果图动画后

html

<!DOCTYPE html>
<html >
  <head>
    <meta charset="UTF-8">
    <title>Animated SVG Hover Buttons</title>
    <link rel="stylesheet" href="css/style.css">
  </head>
  <body>
    <div id="workarea">
              <div class="position">
            
                <!--start button, nothing above this is necessary -->
                <div class="svg-wrapper">
                  <svg height="40" width="150" xmlns="http://www.w3.org/2000/svg">
                    <rect id="shape" height="40" width="150" />
                    <div id="text">
                      <a href=""><span class="spot"></span>Button 1</a>
                    </div>
                  </svg>
                </div>
                <!--Next button -->
                <div class="svg-wrapper" >
                  <svg height="40" width="150" xmlns="http://www.w3.org/2000/svg" >
                    <rect id="shape" height="40" width="150" />
                    <div id="text">
                      <a href=""><span class="spot"></span>Button 2</a>
                    </div>
                  </svg>
                </div>
                <!--Next button -->
                <div class="svg-wrapper">
                  <svg height="40" width="150" xmlns="http://www.w3.org/2000/svg">
                    <rect id="shape" height="40" width="150" />
                    <div id="text">
                      <a href=""><span class="spot"></span>Button 3</a>
                    </div>
                  </svg>
                </div>
                <!--End button -->
            
              </div>
    </div>
  </body>
</html>

css

* {
  margin: 0;
  padding: 0;
}

html,
css {
  width: 100%;
  height: 100%;
}

.position {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  margin-top: 15%;
}

#workarea {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #1e1a3e;
  font-family: Raleway;
}

#personal {
  color:white;
  text-decoration:none;
  position:absolute;
  bottom:15px;
  right:2%;
}


.spot {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.svg-wrapper {
  margin-top: 0;
  position: relative;
  width: 150px;
  /*make sure to use same height/width as in the html*/
  height: 40px;
  display: inline-block;
  border-radius: 3px;
  margin-left: 5px;
  margin-right: 5px
}
#shape {
  stroke-width: 4px;/*线的宽度*/
  fill: transparent;/*填充颜色*/
  stroke: #009FFD;/*线的颜色*/
  stroke-dasharray:85 400;/*创建虚线宽度,间距*/
  stroke-dashoffset:-220;/*线从哪个位置开始*/
  transition: 1s all ease;/*动画*/
}
#text {
  margin-top: -35px;
  text-align: center;
}

#text a {
  color: white;
  text-decoration: none;
  font-weight: 100;
  font-size: 1.1em;
}
.svg-wrapper:hover #shape {
  stroke-dasharray: 50 0;
  stroke-width: 3px;
  stroke-dashoffset: 0;
  stroke: #06D6A0;
}

 

转载于:https://www.cnblogs.com/binmengxue/p/5564590.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
此扩展程序为在Chrome中查看的SVG文件添加了缩放和平移功能。 如果您喜欢此扩展并希望支持其扩展,请考虑捐赠:https://paypal.me/PeterRyszkiewicz/2 https://cash.me/$PeterRyszkiewicz/2注意---------- ----------------------您可以通过以下步骤访问文件URL:转到Chrome的扩展程序设置,然后选中“允许访问文件URL” --------------------------转到带有SVG文件的网站。 该扩展程序开始在SVG图形上工作,您可以:*平移:单击并拖动或按住空格键并拖动光标以在图像上平移*放大或缩小:使用鼠标滚轮*缩放:单击并拖动缩放*缩小:轻按Alt键*重置缩放:按Escape键。尝试通过按住Shift键并拖动来平移SVG,这会导致不希望的平移; 可能是Google Chrome浏览器的错误/功能。 如果您想使用此扩展名查看本地文件,则必须在Chrome的扩展程序视图中启用“允许访问文件URL”。 尝试测试这些SVG --------------------------------- *向量与栅格:http://upload.wikimedia .org / wikipedia / commons / 6 / 6b / Bitmap_VS_SVG.svg *世界地图:http://upload.wikimedia.org/wikipedia/commons/1/17/World.svg *动画世界地标:http:// svg kvalitne.cz/worldlandmarks/worldlandmarks.svg *美国地图:http://upload.wikimedia.org/wikipedia/commons/d/dc/USA_orthographic.svg *另一幅美国地图:http:// upload wikimedia.org/wikipedia/commons/3/32/Blank_US_Map.svg *星座猎户座:http://upload.wikimedia.org/wikipedia/commons/f/ff/Orion_IAU.svg *贝特朗和弦:http:// upload wikimedia.org/wikipedia/commons/9/91/Bertrand3-chords.svg * P型和N型硅:http://upload.wikimedia.org/wikipedia/commons/2/20/CellStructure-SiCrystal-eng-vect svg * Zeta电位和滑动平面图:http://upload.wikimedia.org/wikipedia/commons/6/62/Diagram_of_zeta_potential_and_slipping_plane.svg *地球颜色轨迹:http://upload.wikimedia.org/wik ipedia / commons / 4 / 4e / Earth_Color_Trace.svg *磁矩:http://upload.wikimedia.org/wikipedia/commons/4/4c/Magnetic_moment.svg *简单的Mandelbrot:http://upload.wikimedia.org/ wikipedia / commons / 3 / 3c / Mandelbrot_Components.svg *动画数字钟:http://www.bogotobogo.com/svg_source/SVGDigitalClock.svg有用的链接----------------- ------------- * SVG 1.1 Second Edition规范:http://www.w3.org/TR/SVG11/ * Google Chrome官方扩展页面:https://chrome.google.com / webstore / detail / svg-navigator / pefngfjmidahdaahgehodmfodhhhofkl * Github存储库:https://github.com/pRizz/SVG-Navigator---Chrome扩展程序确认---------------- -------------这个概念最初由伊利诺伊理工学院的Asad Akram,Ryan Oblenida aka O先生和Peter Ryszkiewicz提出。 Peter Ryszkiewicz改编为Google Chrome扩展程序。 这项工作的灵感来自Ke
### 回答1: Bootstrap是一个流行的前端开发框架,而SVG(可缩放矢量图形)是一种用于在Web上呈现图形的XML基于的标记语言。Bootstrap框架并不直接支持SVG图像,但我们可以通过一些方法将两者结合使用。 首先,我们可以在Bootstrap框架的基础上创建一个具有相应布局和样式的容器。然后,我们可以使用SVG元素来创建图形,并将其嵌入到Bootstrap容器中。为了实现这一点,我们可以在Bootstrap的网格系统中添加一个自定义的列,然后使用SVG元素来绘制我们想要的图形。 另一种方法是使用Bootstrap的自定义样式来为SVG图像添加样式。Bootstrap提供了许多有用的CSS类,可以轻松地为SVG图像添加各种样式,如颜色、边框、阴影等。 此外,我们还可以使用Bootstrap框架内置的JavaScript组件来处理SVG图像。Bootstrap提供了一些常用的组件,如模态框、滑动条等,我们可以使用它们来操作和操纵SVG图像中的元素。 总之,虽然Bootstrap框架本身并不直接支持SVG图像,但我们可以通过一些方法将两者结合使用,从而实现具有响应式布局和漂亮样式的SVG图形。 ### 回答2: Bootstrap是一个流行的前端开发框架,提供了各种强大的组件和工具,可以帮助开发者快速建立响应式的网站和应用程序。 而SVG(Scalable Vector Graphics)是一种基于XML的矢量图形格式,可以在网页上展示各种复杂的图形和动画效果。它具有良好的可扩展性和可编辑性。 Bootstrap与SVG可以结合使用,以创建现代化、美观且响应式的网站。在Bootstrap中,可以使用内置的CSS样式和组件来构建基本的页面结构,并使用SVG来添加更多的视觉效果。 与使用普通图像或矢量图标不同,使用SVG可以实现更高级的交互和动画效果。借助Bootstrap提供的CSS和JavaScript,我们可以通过添加类名、样式或事件处理程序来操作SVG元素,实现各种动态效果。比如,我们可以在响应式导航栏中使用SVG图标,当页面被滚动或菜单被展开时,图标可以随之改变颜色或形状。 另外,Bootstrap也提供了内置的图标库(如Font Awesome),通过直接引入这些图标,我们可以轻松地在网页上使用各种矢量图标,而不需要额外的图像文件。这使得图标可以根据需要进行缩放,而不会有质量损失。 总的来说,Bootstrap与SVG的结合可以实现更加丰富和互动的用户界面。它们的使用使得网站开发变得更加简单和高效,同时也提供了更多的设计自由度,以满足用户对于网页视觉效果的需求。 ### 回答3: Bootstrap SVG是指在Bootstrap框架中使用Scalable Vector Graphics(可伸缩矢量图形)的功能。SVG是一种基于XML语法的可缩放矢量图形格式,它支持高质量的图形和动画效果,并且可以通过CSS和JavaScript进行交互。 通过Bootstrap框架集成SVG功能,我们可以在网页中轻松地使用矢量图形,而不必担心像位图一样在放大缩小时出现失真。Bootstrap提供了一些内置的SVG组件和工具,可以让我们快速创建各种矢量图形效果。 Bootstrap SVG的主要用途是创建漂亮且适应不同屏幕尺寸的图标和图形。通过使用内置的SVG图标集,我们可以轻松地在网页中插入各种图标,例如箭头、图表、按钮等。这些图标可以根据需要进行颜色和大小的调整,以适应不同的设计需求。 另外,Bootstrap SVG还提供了一些工具和样式类,帮助我们轻松地控制SVG的样式和行为。例如,我们可以使用CSS样式将SVG图形的颜色、大小、边框等进行自定义。同时,通过JavaScript的支持,我们可以实现一些交互效果,例如图形的动画、鼠标悬停效果等。 总之,Bootstrap SVG是一种方便且强大的工具,可以帮助我们在Bootstrap框架中使用矢量图形。它提供了一系列内置的SVG组件和工具,使我们能够轻松地创建和使用各种图标和图形效果。无论是网页设计师还是开发人员,都可以借助Bootstrap SVG实现更具创意和视觉吸引力的网页设计。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值