Vue:如何在引导容器类中修复顶部的导航栏

问题描述

我有这个 vue app.js 模板:

import matplotlib.pyplot as plt 
import scipy
import cmath 
import math
import numpy as np
from matplotlib import collections  as mc
import pylab as pl

def sort_points(points):
  # pick a point
  reference_point = points[0]
  sorted = [reference_point]
  remaining_points = range(1,len(points))
  for i in range(1,len(points)):

    # find the closest point to reference_point,mindiff = np.sum(np.square(np.array(points[remaining_points[0]])-reference_point))
    idx = 0
    # loop over all the other remaining points
    for j in range(1,len(remaining_points)):
      diff = np.sum(np.square(np.array(points[remaining_points[j]])-reference_point))
      if diff < mindiff:
        mindiff = diff
        idx = j        
    # found the closest: update the selected point,and add it to the list of sorted points
    reference_point = points[remaining_points[idx]]
    sorted.append(reference_point )
    remaining_points = np.delete(remaining_points,idx)
  return sorted    


midpoints = [[305.0,244.5],[293.5,237.0],[274.5,367.5],[270.5,373.5],[229.5,391.0],[216.0,396.0],[302.0,269.0],[295.0,271.0],[60.5,146.5],[54.0,153.0],[52.0,167.0],[45.0,178.0],[75.0,76.5],[68.5,98.5],[97.0,58.5],[283.5,357.5],[309.0,255.0],[305.0,[299.5,291.5],[300.0,297.0],309.5],[62.5,105.0],[61.0,118.5],[58.0,139.0],[241.0,111.5],[252.0,124.5],[256.0,132.5],[283.0,356.0],290.5],[296.0,280.5],[158.0,387.0],[177.0,396.5],[197.5,402.0],[192.5,403.0],[189.5,400.5],[202.5,401.0],[214.0,395.5],[233.5,375.0],[249.0,372.5],[282.5,340.0],[284.5,328.0],[49.5,189.0],[57.0,198.0],[238.5,108.5],[162.0,57.5],[170.0,59.0],[239.5,204.5],[239.0,200.0],[291.0,227.5],[265.0,229.5],189.5],[245.5,193.5],[55.0,119.0],[53.5,134.0],[50.0,129.0],[107.0,46.0],[119.5,50.5],54.0],[150.5,377.0],[257.5,[280.0,349.5],90.0],98.0],[130.0,49.0],[189.0,65.0],[191.0,64.5],62.5],139.5],[128.0,361.5],[127.5,360.0],[136.5,382.5],[131.5,378.5],[126.5,370.0],[105.5,343.5],[101.0,324.5],[121.5,347.5],[126.0,353.0],[198.5,72.0],[237.5,83.5],[145.5,[138.5,[159.0,57.0],[254.5,220.0],[253.0,216.5],[248.0,208.5],[245.0,173.5],[250.0,158.0],[181.0,[147.0,[140.5,381.5],[92.5,313.5],[99.5,290.0],[98.0,[134.5,47.5],[73.0,222.5],[71.0,214.5],[107.5,246.0],[110.5,248.0],[104.0,266.5],[69.0,209.5],[226.5,87.0],[205.5,94.5],77.5],[96.5,[109.0,265.5],[108.0,263.5],[65.0,205.5],[56.0,201.5],[90.0,240.0],[83.0,224.0],[90.5,231.5],231.5]]
midpoints = sort_points(midpoints)

x_list = [ p[0] for p in midpoints ]
y_list = [ p[1] for p in midpoints ]
complexmdpts = [ [p[0]+1j*p[1]] for p in midpoints ]

plt.scatter(x_list,y_list,s=50,marker="x",color='y') 

coefs = scipy.fft(complexmdpts,axis=0)
n = len(coefs)
print("coeffs[{}]:\n{}".format(n,coefs[:5]))

# function in terms of t to trace out curve
m = n
def f(t):
    ftx=0
    fty=0
    for i in range(-int(m/2),int(m/2)+1):
        ftx+=(coefs[i]*cmath.exp(1j*2*math.pi*i*t/n)).real.tolist()[0]
        fty+=(coefs[i]*cmath.exp(1j*2*math.pi*i*t/n)).imag.tolist()[0]
    return [ftx/n,fty/n]
    

lines = [] # store computed lines segments to approximate function

pft = f(0) # compute first point

t_list = np.linspace(0,n,n) # compute list of dts to use when drawing

for t in t_list: 
    cft = f(t)
    lines.append([cft,pft])
    pft = cft

#draw f(t) approximation
lc = mc.LineCollection(lines)
fig,ax = pl.subplots()
ax.add_collection(lc)
ax.autoscale()
ax.margins(0.1)

导航栏组件位于 div 类中,顶部固定有 bootstrap :

<template>
  <div id="app" class="container shadow px-0">
      <NavBar/> 
      <Slider/> 
  </div>
</template>

我想显示具有容器宽度的导航栏菜单,但是当我添加固定顶部时,它将像此图像一样占用 100% 的屏幕:

enter image description here

解决方法

我通过将其添加到固定顶部 div 来解决它:

 <div class="fixed-top" style="max-width:inherit;margin:auto">