js+css实现带附件发送邮件表单效果代码
代码语言:html
所属分类:表单美化
代码描述:js+css实现带附件发送邮件表单效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <style> @charset "UTF-8"; /* Reset box-model and set borders */ /* ============================================ */ *, ::before, ::after { box-sizing: border-box; border-style: solid; border-width: 0; } /* Document */ /* ============================================ */ /** * 1. Correct the line height in all browsers. * 2. Prevent adjustments of font size after orientation changes in iOS. * 3. Remove gray overlay on links for iOS. * 4. Render kerning consistently in all browsers. * 5. Correct font smoothing for macOS. * 6. Fix bottom navigation area issue for Safari 15+. */ html { line-height: 1.5; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ -webkit-tap-highlight-color: transparent; /* 3 */ font-feature-settings: "kern"; /* 4 */ -webkit-font-feature-settings: "kern"; /* 5 */ -moz-font-feature-settings: "kern"; /* 5 */ -webkit-font-smoothing: antialiased; /* 5 */ -moz-osx-font-smoothing: grayscale; /* 5 */ } /* Sections */ /* ============================================ */ /** * Remove the margin in all browsers. */ body { margin: 0; } /** * Render the `main` element consistently in IE. */ main { display: block; } /* Vertical rhythm */ /* ============================================ */ p, table, blockquote, address, pre, iframe, form, figure, dl { margin: 0; } /* Headings */ /* ============================================ */ h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; margin: 0; } /* Lists (enumeration) */ /* ============================================ */ ul, ol, menu { margin: 0; padding: 0; list-style: none; } /* Lists (definition) */ /* ============================================ */ dd { margin-left: 0; } /* Grouping content */ /* ============================================ */ /** * 1. Add the correct box sizing in Firefox. * 2. Show the overflow in Edge and IE. */ hr { box-sizing: content-box; /* 1 */ height: 0; /* 1 */ overflow: visible; /* 2 */ border-top-width: 1px; margin: 0; clear: both; color: inherit; } /** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. * 3. Wrap lines by default instead of overflow. */ pre { font-family: inherit; /* 1 */ font-size: inherit; /* 2 */ white-space: pre-line; /* 3 */ } address { font-style: inherit; } /* Text-level semantics */ /* ============================================ */ /** * Remove the gray background on active links in IE 10. */ a { background-color: transparent; text-decoration: none; color: inherit; } /** * 1. Remove the bottom border in Chrome 57- * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */ abbr[title] { border-bottom: none; /* 1 */ text-decoration: none; /* 2 */ } /** * Add the correct font weight in Chrome, Edge, and Safari. */ b, strong { font-weight: bolder; } /** * 1. Correct the inheritance and scaling of font size in all browsers. * 2. Correct the odd `em` font sizing in all browsers. */ code, kbd, samp { font-family: "Menlo", "Monaco", "Consolas", "Courier New", monospace; /* 1 */ font-size: inherit; /* 2 */ } /** * Add the correct font size in all browsers. */ small { font-size: 80%; } /** * Prevent `sub` and `sup` elements from affecting the line height in all browsers. */ sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sub { bottom: -0.25em; } sup { top: -0.5em; } /* Replaced content */ /* ============================================ */ /** * Prevent vertical alignment issues. */ svg, img, embed, object, iframe { vertical-align: bottom; } /* Forms */ /* ============================================ */ /** * Reset form fields to make them styleable. * 1. Make form elements stylable across systems iOS especially. * 2. Inherit text-transform from parent. */ button, input, optgroup, select, textarea { -webkit-appearance: none; /* 1 */ appearance: none; vertical-align: middle; color: inherit; font: inherit; background: transparent; padding: 0; margin: 0; border-radius: 0; text-align: inherit; text-transform: inherit; /* 2 */ } /** * Correct cursors for clickable elements. */ button, [type=button], [type=reset], [type=submit] { cursor: pointer; } button:disabled, [type=button]:disabled, [type=reset]:disabled, [type=submit]:disabled { cursor: default; } /** * Clickable labels and selects. */ select, label { cursor: pointer; } /** * Improve outlines for Firefox and unify style with input elements & buttons. */ :-moz-focusring { outline: auto; } select:disabled { opacity: inherit; } /** * 1. Remove padding. */ option { padding: 0; /* 1 */ } /** * Reset to invisible */ fieldset { margin: 0; padding: 0; min-width: 0; } legend { padding: 0; } /** * Add the correct vertical alignment in Chrome, Firefox, and Opera. */ progress { vertical-align: baseline; } /** * Remove the default vertical scrollbar in IE 10+. */ textarea { overflow: auto; } /** * Correct the cursor style of increment and decrement buttons in Chrome. */ [type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button { height: auto; } /** * Correct the outline style in Safari. */ [type=search] { outline-offset: -2px; } /** * Remove the inner padding in Chrome and Safari on macOS. */ [type=search]::-webkit-search-decoration { -webkit-appearance: none; } /* * Remove the ‘X’ from Chrome and Safari. */ input[type=search]::-webkit-search-decoration, input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-results-button, input[type=search]::-webkit-search-results-decoration { display: none; } /** * 1. Hide file input completely. * 2. Remove selected file text. * 3. Set cursor to pointer for all browsers. */ input[type=file] { opacity: 0; /* 1 */ font-size: 0; /* 2 */ cursor: pointer; /* 3 */ } /** * Fix appearance for Firefox */ [type=number] { -moz-appearance: textfield; } /* Interactive */ /* ============================================ */ /* * Add the correct display in Edge, IE 10+, and Firefox. */ details { display: block; } /* * Add the correct display in all browsers. */ summary { display: list-item; } /* * Hide focus outline but keep it visible for Windows High Contrast Mode. */ :focus, [contenteditable]:focus { outline-style: solid; outline-color: transparent; } /* Tables */ /* ============================================ */ /** 1. Correct table border color inheritance in all Chrome and Safari. */ table { border-color: inherit; /* 1 */ border-collapse: collapse; } caption { text-align: left; } td, th { vertical-align: top; padding: 0; } th { text-align: left; font-weight: inherit; } /* Misc */ /* ============================================ */ /* * Make placeholder style consistent across all browsers. */ ::placeholder { opacity: 1; /* stylelint-disable-next-line color-named */ color: darkgray; } /* * Hide input arrow when used with datalist. */ ::-webkit-calendar-picker-indicator { /* stylelint-disable-next-line declaration-no-important */ display: none !important; } /* * 1. Remove image default bottom space. * 2. Prevent image from overflowing the container. */ img { display: block; max-width: 100%; } .visually-hidden { position: absolute; top: auto; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); width: 1px; height: 1px; white-space: nowrap; } body { display: flex; justify-content: center; align-items: center; min-height: 100vh; background-color: #fafafa; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Open Sans", system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji"; } .mail-wrapper { position: relative; } .mail { position: relative; border-radius: 8px; padding: calc(1em + 8px); width: 520px; background-color: #fff; box-shadow: inset 0 0 1px 1px rgba(9, 0, 80, 0.2), inset 0 -2px 1px rgba(9, 0, 80, 0.1), 0 1px 2px rgba(9, 0, 80, 0.2), 0 1px 8px rgba(9, 0, 80, 0.1); overflow: hidden; } .mail::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: repeating-linear-gradient(45deg, transparent 0 16px, #d51122 0 32px, transparent 0 48px, #2770cb 0 64px); clip-path: polygon(0% 0%, 0% 100%, 8px 100%, 8px 8px, calc(100% - 8px) 8px, calc(100% - 8px) calc(100% - 8px), 8px calc(100% - 8px), 8px 100%, 100% 100%, 100% 0%); } .mail-title { margin-bottom: 0.5em; font-weight: 600; color: #2770cb; } .mail-field { display: block; width: 100%; font-style: italic; } .mail-field:not(.content) { margin-bottom: 8px; background-image: linear-gradient(#a2a0ae 0 1px); background-position-y: bottom; background-size: 100% 1px; background-repeat: no-repeat; } .mail-field.content { background-image: repeating-linear-gradient(to bottom, transparent 0 calc(1.5em - 1px), #a2a0ae calc(1.5em - 1px) 1.5em); background-attachment: local; resize: none; } .mail-field::placeholder { font-style: normal; color: #b5b2c6; } .mail-content-section { display: flex; column-gap: 1.5em; align-items: stretch; margin-top: 1.5em; } .mail-attachment-container { display: flex; justify-content: center; align-items: center; flex-shrink: 0; position: relative; border: 1px dashed #a2a0ae; border-radius: 4px; padding: 4px 8px; width: 110px; height: 110px; transition-property: border-color, background-color; transition-duration: 0.2s; } .mail-attachment-container:not(.filled):hover, .mail-attachment-container.drag-over { border.........完整代码请登录后点击上方下载按钮下载查看
网友评论0