> 웹 프론트엔드 > 프런트엔드 Q&A > 부트스트랩 모달은 무엇을 의미합니까?

부트스트랩 모달은 무엇을 의미합니까?

青灯夜游
풀어 주다: 2021-11-05 15:22:15
원래의
2855명이 탐색했습니다.

부트스트랩에서 모달은 상위 양식을 덮는 하위 양식인 "모달 상자"를 의미하며, 그 목적은 상위 양식을 벗어나지 않고 별도의 소스에서 콘텐츠를 표시하는 것입니다. 모달 상자는 사용자 알림, 방문자 상호 작용, 메시지 경고 또는 맞춤형 콘텐츠 상호 작용을 위해 눈길을 끄는 프롬프트와 상호 작용을 웹 사이트에 추가할 수 있습니다.

부트스트랩 모달은 무엇을 의미합니까?

이 튜토리얼의 운영 환경: Windows 7 시스템, bootsrap 버전 3.3.7, DELL G3 컴퓨터

Modal은 상위 폼을 덮는 하위 폼입니다. 일반적으로 목적은 상위 양식을 벗어나지 않고도 상호 작용이 가능한 별도 소스의 콘텐츠를 표시하는 것입니다. 하위 양식은 정보, 상호 작용 등을 제공합니다.

Bootstrap 팝업 모달 상자 스타일

Bootstrap의 JavaScript 모달 상자 플러그인을 사용하여 사용자 알림, 방문자 상호 작용, 메시지 경고 또는 맞춤형 콘텐츠 상호 작용을 위해 눈길을 끄는 프롬프트와 상호 작용을 웹 사이트에 추가하세요.

모달 상자 닫기:

  • 부트스트랩 모달은 무엇을 의미합니까?작동 원리

    를 클릭하세요.
  • 팝업 모달은 HTML, CSS 및 Javascript로 만들어졌습니다. 모달 자체의 콘텐츠를 스크롤할 수 있도록 에서 스크롤 이벤트를 문서화하고 제거하세요.

    부트스트랩 모달은 무엇을 의미합니까?

  • 동적 모듈 상자를 자동으로 닫으려면 모달 상자의 "배경"(회색 배경 영역)을 클릭하세요.
  • Bootstrap은 한 번에 하나의 모달 창만 지원하며 중첩 모드는 지원하지 않습니다. 중첩으로 인해 사용자 경험이 저하되기 때문입니다.

모달 상자는 프레젠테이션의 다른 요소와 매우 다른 위치: 고정을 사용합니다. 다른 요소의 간섭을 피하기 위해 팝업 모달 상자의 HTML을 최대한 최상위 수준에 배치하십시오. 특히 .modal 이벤트가 다른 고정 요소에도 정의되어 있는 경우 문제가 발생할 수 있습니다.

  • 위치: 고정 속성의 영향도 받습니다. 모바일 장치에서 모달 박스를 사용할 때 몇 가지 주의 사항이 있습니다.

  • HTML5의 의미론적 정의에 따르면 autofocusHTML 속성은 Bootstrap 모달 상자에 영향을 미치지 않습니다. 동일한 효과를 얻으려면 일부 JavaScript를 사용해야 합니다.

  • Normal 모달 상자
  • .modal: 모달 상자의 가장 바깥쪽 컨테이너입니다.
  • .modal-dialog: 모달 상자 컨테이너.
  • .modal-content: 모달 상자의 콘텐츠를 배치하고 모달 상자 스타일을 설정합니다.

.modal-header: 모달 상자 헤더.

  • .modal-title: 모달 상자 제목.

  • .modal-body: 모달 상자의 주요 내용입니다.

  • .modal-footer: 모달 상자 바닥글 콘텐츠.

  • <div class="modal fade" id="modal1">
    	<div class="modal-dialog">
    		<div class="modal-content">
    			<div class="modal-header">
    				<h5 class="modal-title">标题</h5>
    				<button class="close" data-dismiss="modal">
    					<span>&times;</span>
    				</button>
    			</div>
    			<div class="modal-body">
    				ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.
    			</div>
    			<div class="modal-footer">
    				<button class="btn btn-secondary" data-dismiss="modal">关闭</button>
    				<button class="btn btn-primary">保存</button>
    			</div>
    		</div>
    	</div>
    </div>
    
    <div class="container">
    	<div class="row mt-5">
    		<div class="col">
    			<button class="btn btn-primary" data-toggle="modal" data-target="#modal1">普通的模态框</button>
    		</div>
    	</div>
    </div>
    로그인 후 복사

  • 스크롤 막대가 있는 모달 상자

  • 사용자 뷰포트(팝업 콘텐츠 영역) 또는 장치의 모달이 길어지면 자동으로 페이지를 스크롤합니다.

    <div class="modal fade" id="modal1">
    	<div class="modal-dialog">
    		<div class="modal-content">
    			<div class="modal-header">
    				<h5 class="modal-title">标题</h5>
    				<button class="close" data-dismiss="modal">
    					<span>&times;</span>
    				</button>
    			</div>
    			<div class="modal-body">
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    				<p>ur et. Donec sed odio dui. Donec ullamcorper nulla non metus auctor fringilla.</p>
    
    			</div>
    			<div class="modal-footer">
    				<button class="btn btn-secondary" data-dismiss="modal">关闭</button>
    				<button class="btn btn-primary">保存</button>
    			</div>
    		</div>
    	</div>
    </div>
    <div class="container">
    	<div class="row mt-5">
    		<div class="col">
    			<button class="btn btn-primary" data-toggle="modal" data-target="#modal1">有滚动条的模态框</button>
    		</div>
    	</div>
    </div>
    로그인 후 복사

  • 수직 중심 모달

.modal-dialog 대화 상자에 .modal-dialog-centered를 추가하여 모달을 수직 중앙에 배치합니다. 부트스트랩 모달은 무엇을 의미합니까?

<!-- 垂直居中的模态框 -->
<div class="modal fade" id="modal2">
	<div class="modal-dialog modal-dialog-centered">	<!-- modal-dialog-centered这个class要加在这里 -->
		<div class="modal-content">
			<div class="modal-header">
				<h5 class="modal-title">标题</h5>
				<button class="close" data-dismiss="modal">
					<span>&times;</span>
				</button>
			</div>
			<div class="modal-body">
					垂直居中的模态框
			</div>
			<div class="modal-footer">
				<button class="btn btn-secondary" data-dismiss="modal">关闭</button>
				<button class="btn btn-primary">保存</button>
			</div>
		</div>
	</div>
</div>
<div class="container">
	<div class="row mt-5">
		<div class="col">
			<button class="btn btn-secondary" data-toggle="modal" data-target="#modal2">垂直居中的模态框</button>
		</div>
	</div>
</div>
로그인 후 복사

그리드 시스템을 포함하는 모달 상자

.container-fluid 그리드 시스템을 .modal-body에 추가하면 동적 뷰포트에서 Bootsrap 그리드 시스템을 사용할 수 있으며 어디에서나 정상적으로 사용할 수 있습니다. 그리드 시스템 클래스 정의. 부트스트랩 모달은 무엇을 의미합니까?

<!-- 使用栅格系统 -->
<div class="modal fade" id="modal3">
	<div class="modal-dialog modal-dialog-centered">	<!-- modal-dialog-centered这个class要加在这里 -->
		<div class="modal-content">
			<div class="modal-header">
				<h5 class="modal-title">标题</h5>
				<button class="close" data-dismiss="modal">
					<span>&times;</span>
				</button>
			</div>
			<div class="modal-body">
				<div class="container-fluid">
					<div class="row">
						<div class="col-md-4 bg-info border">第1列</div>
						<div class="col-md-4 bg-info border">第2列</div>
						<div class="col-md-4 bg-info border">第3列</div>
						<div class="col-md-12 bg-info border">第4列</div>
					</div>
					<div class="row">
						<div class="col bg-info border">第1列</div>
						<div class="col bg-info border">第2列</div>
						<div class="col bg-info border">第3列</div>
						<div class="col bg-info border">第4列</div>
					</div>
					<div class="row">
						<div class="col-md-5 bg-info">第1列</div>
						<div class="col-md-4 bg-info ml-auto">第2列</div>
					</div>
					<div class="row mt-3">
						<div class="col-xl-2 col-lg-3 col-md-4 col-sm-6 col-12  bg-info border">超大屏6个,大屏4个,中等屏3个,小屏2个,超小屏1个</div>
						<div class="col-xl-2 col-lg-3 col-md-4 col-sm-6 col-12  bg-info border">超大屏6个,大屏4个,中等屏3个,小屏2个,超小屏1个</div>
						<div class="col-xl-2 col-lg-3 col-md-4 col-sm-6 col-12  bg-info border">超大屏6个,大屏4个,中等屏3个,小屏2个,超小屏1个</div>
						<div class="col-xl-2 col-lg-3 col-md-4 col-sm-6 col-12  bg-info border">超大屏6个,大屏4个,中等屏3个,小屏2个,超小屏1个</div>
						<div class="col-xl-2 col-lg-3 col-md-4 col-sm-6 col-12  bg-info border">超大屏6个,大屏4个,中等屏3个,小屏2个,超小屏1个</div>
						<div class="col-xl-2 col-lg-3 col-md-4 col-sm-6 col-12  bg-info border">超大屏6个,大屏4个,中等屏3个,小屏2个,超小屏1个</div>
					</div>
				</div>
			</div>
			<div class="modal-footer">
				<button class="btn btn-secondary" data-dismiss="modal">关闭</button>
				<button class="btn btn-primary">保存</button>
			</div>
		</div>
	</div>
</div>
<div class="container">
	<div class="row mt-5">
		<div class="col">
			<button class="btn btn-danger" data-toggle="modal" data-target="#modal3">包含栅格系统的模态框</button>
		</div>
	</div>
</div>
로그인 후 복사

모달 상자 크기

.modal-dialog에 모달 상자 크기를 추가하세요. 부트스트랩 모달은 무엇을 의미합니까?

class

설명

Modal max-width부트스트랩 모달은 무엇을 의미합니까?

.modal-xl

초대형 사이즈

1140px
.modal-lg 대형 사이즈 800px
없음(기본값)기본 크기500px
.modal-sm작은 크기300px
<!-- 尺寸大小-超大尺寸 -->
<div class="modal fade bd-example-modal-xl" id="modal5">	<!-- 这里添加.bd-example-modal-xl -->
	<div class="modal-dialog modal-xl">	<!-- 这里添加.modal-xl -->
		<div class="modal-content">
			<div class="modal-header">
				<h5 class="modal-title">标题</h5>
				<button class="close" data-dismiss="modal">
					<span>&times;</span>
				</button>
			</div>
			<div class="modal-body">
				超大尺寸模态框
			</div>
			<div class="modal-footer">
				<button class="btn btn-secondary" data-dismiss="modal">关闭</button>
				<button class="btn btn-primary">保存</button>
			</div>
		</div>
	</div>
</div>
<!-- 尺寸大小-大尺寸 -->
<div class="modal fade bd-example-modal-lg" id="modal6">	<!-- 这里添加.bd-example-modal-lg -->
	<div class="modal-dialog modal-lg">	<!-- 这里添加.modal-lg -->
		<div class="modal-content">
			<div class="modal-header">
				<h5 class="modal-title">标题</h5>
				<button class="close" data-dismiss="modal">
					<span>&times;</span>
				</button>
			</div>
			<div class="modal-body">
				大尺寸模态框
			</div>
			<div class="modal-footer">
				<button class="btn btn-secondary" data-dismiss="modal">关闭</button>
				<button class="btn btn-primary">保存</button>
			</div>
		</div>
	</div>
</div>
<!-- 尺寸大小-小尺寸 -->
<div class="modal fade bd-example-modal-sm" id="modal7">	<!-- 这里添加.bd-example-modal-sm -->
	<div class="modal-dialog modal-sm">	<!-- 这里添加.modal-sm -->
		<div class="modal-content">
			<div class="modal-header">
				<h5 class="modal-title">标题</h5>
				<button class="close" data-dismiss="modal">
					<span>&times;</span>
				</button>
			</div>
			<div class="modal-body">
				小尺寸模态框
			</div>
			<div class="modal-footer">
				<button class="btn btn-secondary" data-dismiss="modal">关闭</button>
				<button class="btn btn-primary">保存</button>
			</div>
		</div>
	</div>
</div>

<div class="container">
	<div class="row mt-5">
		<div class="col">
			<button class="btn btn-info" data-toggle="modal" data-target="#modal5">超大尺寸模态框</button>
			<button class="btn btn-info" data-toggle="modal" data-target="#modal6">大尺寸模态框</button>
			<button class="btn btn-info" data-toggle="modal" data-target="#modal7">小尺寸模态框</button>
		</div>
	</div>
</div>
로그인 후 복사

使用数据属性

data属性,需要添加在button身上。

  • data-backdrop 是否显示遮罩层

  • data-keyboard 按esc是否关闭模态框

  • data-focus 让模态框获取到焦点

  • data-show 初始化时模态框是否显示

<!-- data属性 -->
<div class="modal fade" id="modal8">
	<div class="modal-dialog">
		<div class="modal-content">
			<div class="modal-header">
				<h5 class="modal-title">标题</h5>
				<button class="close" data-dismiss="modal">
					<span>&times;</span>
				</button>
			</div>
			<div class="modal-body">
				data属性
			</div>
			<div class="modal-footer">
				<button class="btn btn-secondary" data-dismiss="modal">关闭</button>
				<button class="btn btn-primary">保存</button>
			</div>
		</div>
	</div>
</div>
<div class="container">
	<div class="row mt-5">
		<div class="col">
			<button class="btn btn-dark" data-toggle="modal" data-target="#modal8" data-backdrop="true" data-keyboard="false" data-focus="true" data-show="false">data属性</button>
		</div>
	</div>
</div>
로그인 후 복사

JavaScript方法事件

方法:

  • .modal(options):激活您的内容作为模态,将选项加入到object内。

  • .modal('toggle'):手动切换动态模态框,在动态模态框实际显示或隐藏之前返回给调用者(即在shown.bs.modal或hidden.bs.modal事件发生之前)。

  • .modal('show'):手动打开动态模态框,在动态模态框实际显示之前返回给调用者(即在shown.bs.modal事件发生前)。

  • .modal('hide'):手动隐藏动态模态框,在动态模态框实际隐藏之前返回给调用者(即在hidden.bs.modal事件发生前)。

事件:

  • show.bs.modal:

    当调用show实例方法时,会立即触发该事件。如果是由点击引起的,被点击的元素是可用的,成为Event对象的relatedTarget属性。

  • shown.bs.modal:="normal" data-row-style="normal">

    当模态框对用户来说可见时(需要等待CSS过渡完成),会触发该事件。如果是由点击引起的,被点击的元素是可用的,成为Event对象的relatedTarget属性。

  • hide.bs.modal:当调用hide实例方法时,会立即触发该事件。

  • hidden.bs.modal:

    当模态框对用户来说终于完成隐藏时(需要等待CSS过渡完成),会触发该事件。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<title>Bootstrap弹出模态框样式</title>
</head>
<body>
<!-- 方法与事件 -->
<div class="modal fade" id="myModal">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">标题</h5>
<button class="close" data-dismiss="modal">
<span>&times;</span>
</button>
</div>
<div class="modal-body">
data属性
</div>
<div class="modal-footer">
<button class="btn btn-secondary" data-dismiss="modal">关闭</button>
<button class="btn btn-primary">保存</button>
</div>
</div>
</div>
</div>
<div class="container">
<div class="row mt-5">
<div class="col">
<button class="btn btn-warning" id="myBtn">方法与事件</button>
</div>
</div>
</div>
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"
integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo"
crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"
integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM"
crossorigin="anonymous"></script>
<script>
//方法
$(&#39;#myBtn&#39;).click(function(){
$(&#39;#myModal&#39;).modal(&#39;show&#39;);
});
/* $(&#39;#myModal&#39;).modal(&#39;show&#39;);
setTimeout(function(){
$(&#39;#myModal&#39;).modal(&#39;hide&#39;);
},2000); */
//事件
$(&#39;#myModal&#39;).on(&#39;show.bs.modal&#39;, function (e) {
console.log(&#39;显示前&#39;);
});
$(&#39;#myModal&#39;).on(&#39;shown.bs.modal&#39;, function (e) {
console.log(&#39;完全显示了&#39;);
});
$(&#39;#myModal&#39;).on(&#39;hide.bs.modal&#39;, function (e) {
console.log(&#39;隐藏前&#39;);
});
$(&#39;#myModal&#39;).on(&#39;hidden.bs.modal&#39;, function (e) {
console.log(&#39;完全隐藏了&#39;);
});
</script>
</body>
</html>
로그인 후 복사

부트스트랩 모달은 무엇을 의미합니까?

推荐学习:《bootstrap使用教程

위 내용은 부트스트랩 모달은 무엇을 의미합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿