整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          JavaScript+css實現的下拉菜單,明暗模式

          JavaScript+css實現的下拉菜單,明暗模式切換html頁面前端源碼

          家好,今天給大家介紹一款,JavaScript+css實現的下拉菜單,明暗模式切換html頁面前端源碼(圖1)。送給大家哦,獲取方式在本文末尾。

          圖1

          隱藏式下拉菜單,明暗模式隨意切換(圖2)

          圖2

          代碼完整,需要的朋友可以下載學習(圖3)

          圖3

          本源碼編碼:10214,需要的朋友,訪問下面鏈接后,搜索10214,即可獲取。

          「鏈接」

          .NET的SelectPdf Html到Pdf轉換器-社區版是.NET的SelectPdf庫中提供的功能強大的html到pdf轉換器的免費版本。
          轉換器提供了許多強大的選項(將任何網頁轉換為pdf,將任何html字符串轉換為pdf,html5 / css3 / javascript支持,頁眉和頁腳支持等),唯一的限制是它最多可以生成pdf文檔。5頁長。
          .NET的免費HTML至Pdf轉換器–社區版功能:最多生成5頁pdf文檔,將任何網頁轉換為pdf,將任何原始html字符串轉換為pdf,設置pdf頁面設置(頁面大小,頁面方向,頁面邊距) ,在轉換過程中調整內容大小以適合pdf頁面,設置pdf文檔屬性,設置pdf查看器首選項,設置pdf安全性(密碼,權限),設置轉換延遲和網頁導航超時,自定義頁眉和頁腳,在頁眉中支持html和頁腳,自動和手動分頁符,在每個頁面上重復html表頭,支持@media類型屏幕和打印,支持內部和外部鏈接,基于html元素自動生成書簽,支持HTTP標頭,支持HTTP cookie,支持需要身份驗證的網頁,支持代理服務器,啟用/禁用javascript,修改顏色空間,多線程支持,HTML5 / CSS3支持,Web字體支持等等。


          代碼實現

          1、nuget 引用

          Install-Package Select.HtmlToPdf

          2、方法

          • using SelectPdf;using System.Collections.Specialized;using System.IO;using System.Web;
            namespace BQoolCommon.Helpers.File{ public class WebToPdf { public WebToPdf() { //SelectPdf.GlobalProperties.LicenseKey="your-license-key"; }
            /// <summary> /// 將 Html 轉成 PDF,並儲存成檔案 /// </summary> /// <param name="html">html</param> /// <param name="fileName">絕對路徑</param> public void SaveToFileByHtml(string html, string fileName) { var doc=SetPdfDocument(html); doc.Save(fileName); }
            /// <summary> /// 傳入 Url 轉成 PDF,並儲存成檔案 /// </summary> /// <param name="url">url</param> /// <param name="fileName">絕對路徑</param> /// <param name="httpCookies">Cookies</param> public void SaveToFileByUrl(string url, string fileName, NameValueCollection httpCookies) { var doc=SetPdfDocument(url, httpCookies); doc.Save(fileName); }
            /// <summary> /// 將 Html 轉成 PDF,並輸出成 byte[] 格式 /// </summary> /// <param name="html">html</param> /// <returns></returns> public byte[] GetFileByteByHtml(string html) { var doc=SetPdfDocument(html); return doc.Save(); }
            /// <summary> /// 傳入 Url 轉成 PDF,並輸出成 byte[] 格式 /// </summary> /// <param name="url">url</param> /// <param name="httpCookies">Cookies</param> /// <returns></returns> public byte[] GetFileByteByUrl(string url, NameValueCollection httpCookies) { var doc=SetPdfDocument(url, httpCookies); return doc.Save(); }
            /// <summary> /// 將 Html 轉成 PDF,並輸出成 Stream 格式 /// </summary> /// <param name="html">html</param> /// <returns></returns> public Stream GetFileStreamByHtml(string html) { var doc=SetPdfDocument(html); var pdfStream=new MemoryStream();
            doc.Save(pdfStream); pdfStream.Position=0;
            return pdfStream; }
            /// <summary> /// 傳入 Url 轉成 PDF,並輸出成 Stream 格式 /// </summary> /// <param name="html">html</param> /// <returns></returns> public Stream GetFileStreamByUrl(string url, NameValueCollection httpCookies) { var doc=SetPdfDocument(url, httpCookies); var pdfStream=new MemoryStream();
            doc.Save(pdfStream); pdfStream.Position=0;
            return pdfStream; }
            private PdfDocument SetPdfDocument(string html) { var converter=new HtmlToPdf();
            converter.Options.WebPageWidth=1200; html=HttpUtility.HtmlDecode(html);
            return converter.ConvertHtmlString(html); }
            private PdfDocument SetPdfDocument(string url, NameValueCollection httpCookies) { var converter=new HtmlToPdf(); converter.Options.WebPageWidth=1200;
            if (httpCookies != && httpCookies.Count !=0) { converter.Options.HttpCookies.Add(httpCookies); }
            return converter.ConvertUrl(url); }
            }}

            3、調用

            • /// <summary> /// 下載pdf /// </summary> public void Downpdf(string data) { var stream=new BQoolCommon.Helpers.File.WebToPdf().GetFileStreamByHtml(Gethtml(data)); Response.Clear(); //二進制流數據(如常見的文件下載) Response.ContentType="application/octet-stream"; //通知瀏覽器下載文件而不是打開 Response.AddHeader("Content-Disposition", "attachment; filename=" + HttpUtility.UrlEncode("Profit and Loss Statement.pdf", System.Text.Encoding.UTF8)); var bytes=StreamToBytes(stream); Response.BinaryWrite(bytes); Response.Flush(); stream.Close(); stream.Dispose();
              Response.End(); }

              那么如何獲取指定頁面的html 呢 傳入對應的model 獲得指定動態的html

              • private string Gethtml(string data) { string str="";
                str=this.ControllerContext.RenderViewToString("ProfitDetails", data);
                return str; }
                • using BQoolCommon.Helpers.Format;using Newtonsoft.Json;using OrdersManager.Models.ViewModel.Report;using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Web;using System.Web.Mvc;
                  namespace OrdersManager.Web.Infrastructure{ public static class HelperExtensions { public static string RenderViewToString(this ControllerContext context, string viewName, string data) { if (string.IsOrEmpty(viewName)) viewName=context.RouteData.GetRequiredString("action");
                  context.Controller.ViewData.Model=JsonConvert.DeserializeObject<ProfitDetailsmodel>(StringTools.Base64Decode(StringTools.Base64Decode(data)));
                  using (var sw=new StringWriter()) { ViewEngineResult viewResult=ViewEngines.Engines.FindPartialView(context, viewName); var viewContext=new ViewContext(context, viewResult.View, context.Controller.ViewData, context.Controller.TempData, sw); try { viewResult.View.Render(viewContext, sw); } catch (Exception ex) { throw; }
                  return sw.GetStringBuilder().ToString(); } } }}

                  參考文檔

                  https://www.nuget.org/packages/Select.HtmlToPdf/

          ss3動畫實現搜索框另類的切換特效

          效果圖:

          未點擊搜索圖標前

          點擊搜索圖標后會出現動畫過渡成圖中的展示效果

          實現代碼:

          html:

          css:

          js代碼:


          主站蜘蛛池模板: 国产麻豆精品一区二区三区| 在线一区二区观看| 亚洲成在人天堂一区二区| 国产在线精品一区在线观看| 制服丝袜一区在线| 国产免费无码一区二区| 爆乳无码AV一区二区三区| 国产高清在线精品一区| 久久亚洲中文字幕精品一区| 日韩一区二区免费视频| 亚洲丶国产丶欧美一区二区三区| 人妻无码视频一区二区三区| 99精品国产高清一区二区三区| 国产成人无码精品一区在线观看| 日韩a无吗一区二区三区| bt7086福利一区国产| 国产高清一区二区三区| 自拍日韩亚洲一区在线| 一本久久精品一区二区| 亚洲综合无码一区二区痴汉| 呦系列视频一区二区三区| 精品深夜AV无码一区二区| 人妻激情偷乱视频一区二区三区| 无码人妻精品一区二区三区66| 奇米精品一区二区三区在线观看| 国产内射在线激情一区| 国产在线一区二区在线视频| 国产在线一区二区三区| 亚洲AV成人一区二区三区AV| 日韩精品区一区二区三VR| 99久久精品午夜一区二区| 亚洲熟女综合一区二区三区| 好吊妞视频一区二区| 福利一区二区在线| 香蕉视频一区二区三区| 久久一区二区三区精品| 国产精品福利一区二区久久| 欧美日韩精品一区二区在线视频| 成人区人妻精品一区二区不卡| 无码精品人妻一区二区三区影院| 亚洲国产专区一区|