【问题标题】:How to avoid the drop down menu from resizing its width when clicking on it?单击下拉菜单时如何避免调整其宽度?
【发布时间】:2020-10-26 08:25:55
【问题描述】:

当我单击下拉菜单时,它正在减小它的大小。如何避免它调整大小? 下拉内容设置为绝对,因为我想避免它推送下面的内容。

<div class="row">
<div class="col-md-8">
    <div class="row  customer-heading-wrapper">
        <div class="col-10 p-0 ">
            <div class="input-group new_search" id="adv-search">
                <input type="text" class="form-control form-control-sm rounded-4" placeholder="Search here.." [(ngModel)]="search"
                (ngModelChange)="this.userQuestionUpdate.next($event)">
                <div class="input-group-append">
                    <div class="input-group-append">
                        <button class="btn btn-danger rounded-0 " type="button" *ngIf="searchBox"
                        (click)="search='';clearSearch();">
                        <i class="fa fa-trash"></i>
                        </button>
                    </div>
                    <button class="btn btn-secondary rounded-right hand searc-opt search_new user_search"
                        type="button" pack="eva" (click)="clearMainSearch();searchToggle = !searchToggle">
                    <i class="fa fa-caret-down"></i>
                    </button>
                </div>
                <div class="advance-search" *ngIf="searchToggle">
                    <div class="col-md-12">
                        <form [formGroup]="vendorSearchForm" (ngSubmit)="searchBox=true;onSubmit()">
                        <div class="container-fluid  dropdown-content  mt-2">
                            <div class="card card-holder shadow-light p-0">
                                <div class="col-md-12">
                                    <div class="row mt-2">
                                        <div class="col-lg-2 col-md-12 ">
                                            <label>Vendor Code</label>
                                        </div>
                                        <div class="col-lg-10 col-md-12 ">
                                            <div class="form-group">
                                                <input
                                                    class="form-control transparent-field rounded-0 border-top-0 border-left-0 border-right-0"
                                                    type="text" formControlName="vendorCode" placeholder=""
                                                    oninput="this.value = this.value.toUpperCase()"
                                                    [ngClass]="{ 'status-danger': submitted && f.vendorCode.errors }" />
                                            </div>
                                        </div>
                                        <div class="col-lg-2 col-md-12 ">
                                            <label>Vendor Name</label>
                                        </div>
                                        <div class="col-lg-10 col-md-12">
                                            <div class="form-group">
                                                <input
                                                    class="form-control transparent-field rounded-0 border-top-0 border-left-0 border-right-0"
                                                    type="text" formControlName="vendorName" placeholder=""
                                                    oninput="this.value = this.value.toUpperCase()"
                                                    [ngClass]="{ 'status-danger': submitted && f.vendorName.errors }" />
                                            </div>
                                        </div>
                                    </div>
                                    <div class="row ">
                                        <div class="col-lg-2 col-md-12">
                                            <label>Approved</label>
                                        </div>
                                        <div class="col-lg-10 col-md-12">
                                            <div class="form-group">
                                                <select class="form-control form-control-sm rounded-0 border-top-0 border-left-0 border-right-0"
                                                    placeholder="Choose vendor approved or not" fullWidth
                                                    formControlName="approvedVendor"
                                                    [ngClass]="{ 'status-danger': submitted && f.approvedVendor.errors }">
                                                <option *ngFor="let stat of statuslist" [value]="stat.id" class="drop-bg form-control ">
                                                {{stat.name}}
                                                </option>
                                                </select>
                                            </div>
                                        </div>
                                    </div>
                                    <div class="row">
                                        <div class="col-lg-2 col-md-12 align-item">
                                            <label>Currency</label>
                                        </div>
                                        <div class="col-lg-10 col-md-12">
                                            <div class="form-group">
                                                <ng-autocomplete [data]="currencylist" (selected)="changeSelection($event.name)"
                                                [searchKeyword]="keywordCurrency" placeHolder="Enter Currency name"
                                                [itemTemplate]="currencyTemplate" [notFoundTemplate]="notFoundTemplate"
                                                [initialValue]="currencyName">
                                                </ng-autocomplete>
                                                <ng-template #currencyTemplate let-item>
                                                    <a [innerHTML]="item.name"></a>
                                                </ng-template>
                                                <ng-template #notFoundTemplate let-notFound>
                                                    <div [innerHTML]="notFound"></div>
                                                </ng-template>
                                            </div>
                                        </div>
                                    </div>
                                    <div class="row">
                                        <div class="col-lg-2 col-md-12 align-item">
                                            <label>Active</label>
                                        </div>
                                        <div class="col-lg-10 col-md-12">
                                            <div class="form-group mt-3">
                                                <input type="checkbox" formControlName="status"
                                                    [ngClass]="{ 'is-invalid': submitted && f.status.errors }" status="warning" />
                                            </div>
                                        </div>
                                    </div>
                                    <div class="row">
                                        <div class="col-lg-12 col-md-12 text-right mb-2">
                                            <button type="submit" class="btn btn-sm btn-primary mr-1 search_user_btn"
                                                [disabled]="searchLoader">
                                            <i class="fa fa-search"></i>&nbsp; Search</button>
                                            <button type="button" class="mr-1 btn-sm btn btn-default cancel_btn_1 btn-danger"
                                                (click)="searchToggle = !searchToggle"><i class="fa fa-close"></i>&nbsp;
                                            Close</button>
                                            <button type="button" class="btn btn-sm btn-default  reset_user" (click)="clearSearch()">
                                            <i class="fa fa-refresh"></i>&nbsp; Reset </button>
                                        </div>
                                    </div>
                                </div>
                            </div>
                        </div>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
<div class="col-md-4 p-0">
    <div class="btn-toolbar float-right  ">
        <button type="button" class="btn btn-default border border-right-0  btn-color btn-bg-color theme-btn-icon  btn-sm " style="border-bottom-left-radius: 3px;border-top-left-radius: 3px;border-top-right-radius:0px;border-bottom-right-radius:0px;">
        <a *ngIf="permissions.vendors_add" [routerLink]="['/vendor/add']"><i class="fa fa-plus text-danger"></i></a>
        </button>
        <button type="button" class="btn border btn-default  btn-color btn-bg-color theme-btn-icon btn-sm" style="border-bottom-right-radius: 3px;border-top-right-radius: 3px;border-top-left-radius:0px;border-bottom-left-radius:0px;">
        <a [routerLink]="['/vendor/list']" (click)="exportVendor()"><i class="fa fa-file-excel-o text-success"></i></a>
        </button>
    </div>
</div>
这是下拉内容的css代码:- .下拉内容{ 位置:绝对; 宽度:754px; 高度:430px; z-index:1; 左:-738px; 顶部:28px;

【问题讨论】:

    标签: css bootstrap-4


    【解决方案1】:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>my dropdown</title>
        <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous">
        <style>
            .contents {
                background-color: #88dd25;
            }
        </style>
    </head>
    <body>
       
       
    <div class="dropdown">
      <button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
        Dropdown button
      </button>
      <div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
        <a class="dropdown-item" href="#">Action</a>
        <a class="dropdown-item" href="#">Another action</a>
        <a class="dropdown-item" href="#">Something else here</a>
      </div>
    </div>
      
    <div class="container">
      <div class="contents col-md-12">
      <section>
      Lorem ipsum dolor sit amet, consectetur adipisicing elit. Incidunt ducimus reprehenderit corporis, totam molestias eum doloremque exercitationem ex, laborum quam rerum, nulla dicta unde. Perferendis praesentium provident quos facere cupiditate unde adipisci recusandae iure cumque, eos impedit veniam eum amet ipsam dolorem culpa nisi reprehenderit, labore perspiciatis. Natus non veritatis dignissimos consequatur, suscipit deleniti quo est totam, earum atque hic aliquam quisquam praesentium consequuntur pariatur tenetur sequi consectetur recusandae, illo laborum dolorem dolore. Laborum ea, dolor mollitia molestias doloremque praesentium corporis obcaecati in illum fuga esse, cumque ad illo a nesciunt impedit ducimus doloribus iste porro quaerat soluta exercitationem accusantium possimus. Iure ipsam doloremque cupiditate animi quo excepturi id dicta ratione porro architecto voluptatibus omnis aliquam repellendus labore quibusdam consectetur nemo velit, magni, voluptatem, rerum ex quia mollitia! Eos minus delectus neque maxime provident, quae dicta natus nemo, nihil, consequatur repellendus, quo aut! Consequuntur fugit, sint commodi maxime asperiores, sapiente omnis voluptas, quasi excepturi iusto officiis harum hic nesciunt nostrum ad. Similique fugiat excepturi esse itaque cupiditate impedit velit assumenda tempore labore, quos, dicta voluptatibus voluptas quae minima necessitatibus. Atque unde vitae dolores impedit consectetur corrupti alias. Voluptates nihil soluta velit vitae eveniet, repudiandae, repellendus laudantium, molestiae cupiditate, mollitia nesciunt unde. Nihil a dolores reiciendis perferendis quod perspiciatis dolore explicabo ex eius eligendi natus sequi soluta nostrum cumque unde facilis possimus repellat, omnis labore esse inventore, distinctio quae voluptates aut! Reiciendis hic distinctio nesciunt atque incidunt non, excepturi molestias quasi, dolore vero accusantium. Dolore distinctio nulla cum amet quia. Quas amet aperiam eaque reprehenderit nemo quasi ipsam repellat odit voluptate ea voluptatem deserunt, iste aliquam odio numquam nobis, laudantium id saepe ad minima. Aliquam quae earum, fugit natus consequuntur incidunt maxime nobis eum
      </section>
      </div>
    </div>
       
       
       <script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script>
        <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
        <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script>
        
    </body>
    </html>

    如果您想要一个在打开时不推送其他内容的下拉菜单,您可以使用 bootstrap4 下拉文档 (https://getbootstrap.com/docs/4.4/components/dropdowns/),就像我在您的答案中插入的代码一样,您不需要任何立场:绝对。 我认为值得一提的另一件事是,当您使用像 bootstrap 这样使用宽度类的框架(例如 col-md-12 ,...)时,最好避免在自己的情况下使用“width”属性样式表。

    【讨论】:

      猜你喜欢
      • 2016-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-02
      • 1970-01-01
      • 2019-08-02
      • 2014-09-25
      • 2017-12-25
      相关资源
      最近更新 更多