সম্পূর্ণ পৃষ্ঠা <iframe>


101

আমি নীচের উদাহরণ কোড আছে। মোবাইল ডিভাইসে ব্রাউজারগুলি বাদে এটি সমস্ত ব্রাউজারের সাথে দুর্দান্ত কাজ করে।

ওভারফ্লো ট্যাগটি ইস্যু।

মোবাইল ব্যতীত সকলের সাথে কাজ করে:

margin: 0; padding: 0; height: 100%; overflow: hidden;

কম্পিউটার নয় সমস্ত মোবাইল নিয়ে কাজ করে:

margin: 0; padding: 0; height: 100%;

এটি উভয় ক্ষেত্রে কাজ করার সেরা উপায় কি?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Test Layout</title>
        <style type="text/css">
            body, html
            {
                margin: 0; padding: 0; height: 100%; overflow: hidden;
            }
        </style>
    </head>
    <body>
        <iframe width="100%" height="100%" src="http://www.cnn.com" />
    </body>
</html>

কেন কেবল পুনর্নির্দেশ করবেন না cnn.com?
GolezTrol

সিএনএন.কম আরও একটি উদাহরণ। আমি যে আচরণটি প্রতিরোধ করার চেষ্টা করছি তা দেখানোর জন্য।
লেসার

কেবলমাত্র <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> এইচটিএমএলযুক্ত মাথার সাথে যুক্ত করুন এবং প্রতিক্রিয়াটি আবার ফিরে এসেছে (কমপক্ষে আংশিকভাবে)।
নিউকি

উত্তর:


174

এখানে ওয়ার্কিং কোড। ডেস্কটপ এবং মোবাইল ব্রাউজারগুলিতে কাজ করে। আশা করি এটা সাহায্য করবে. সবাইকে সাড়া দেওয়ার জন্য ধন্যবাদ।

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Test Layout</title>
        <style type="text/css">
            body, html
            {
                margin: 0; padding: 0; height: 100%; overflow: hidden;
            }

            #content
            {
                position:absolute; left: 0; right: 0; bottom: 0; top: 0px; 
            }
        </style>
    </head>
    <body>
        <div id="content">
            <iframe width="100%" height="100%" frameborder="0" src="http://cnn.com" />
        </div>
    </body>
</html>

4
নজর রাখুন, যখন আমি উপরে একটি আইফ্রেম রাখতে চেয়েছিলাম - ক্রোমে সমস্যা ছিল। আমি ক্লোজিং যোগ করেছি </
ফ্রেম

দেখে মনে হচ্ছে এটি আইফ্রেমের মধ্যে থাকা সামগ্রী থেকে প্রতিক্রিয়াশীলতা (যেমন কলামগুলি ভেঙে যাওয়া ইত্যাদি) কেড়ে নিচ্ছে । তবে কোনওভাবে কেবল মোবাইল সাফারি দিয়ে পৃষ্ঠাটি খোলার সময়, কোনও ডেস্কটপ ব্রাউজারের আকার পরিবর্তন করার সময় নয়। কোন ধারণা কি এই আচরণের কারণ হতে পারে?
psteinweber

4
@psteweweber, আপনার কেবলমাত্র <meta content='width=device-width, initial-scale=1.0' name='viewport'>পৃষ্ঠাটি যুক্ত করতে হবে।
jfeust

ব্যবহার ছিল vwপরিবর্তে %জন্য widthএবং height বৈশিষ্ট্যাবলী ক্রোমিয়াম 81. মধ্যে সঠিক প্রান্তিককরণ পেতে অন্যথায় একটি যাদুমন্ত্র মত কাজ করে।
জোশ হাবদাস

19

এটি ক্রস ব্রাউজার এবং সম্পূর্ণ প্রতিক্রিয়াশীল:

<iframe
  src="https://drive.google.com/file/d/0BxrMaW3xINrsR3h2cWx0OUlwRms/preview"
  style="
    position: fixed;
    top: 0px;
    bottom: 0px;
    right: 0px;
    width: 100%;
    border: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    z-index: 999999;
    height: 100%;
  ">
</iframe>


4

অতীতে আমি এটি ব্যবহার করেছি।

html, body {
  height: 100%;
  overflow: auto;
}

এছাড়াও iframeনিম্নলিখিত শৈলী যোগ করুন

border: 0; position:fixed; top:0; left:0; right:0; bottom:0; width:100%; height:100%

উত্তরের জন্য ধন্যবাদ তবে এটি মূলত আমার কাছে যা তাই কাজ করে না। মোবাইল ব্রাউজারে এটি ওভারফ্লো যে কোনও জিনিস কেটে দেয় এবং আপনাকে স্ক্রোল করতে দেয় না।
লেসার

@Lacer প্রতিস্থাপন করার চেষ্টা করুন overflow: hiddenসঙ্গেoverflow: auto
জে প্যাটেলের

চেষ্টা করেছিলাম। মোবাইল ব্রাউজারে এটি এখনও এটি কেটে যায় এবং ডেস্কটপ ব্রাউজারগুলিতে এটি ডাবল স্ক্রোলের কারণ হয়ে থাকে
লেসার

ডেস্কটপ ব্রাউজারে এখনও ডাবল স্ক্রোল নেই এবং মোবাইল ব্রাউজারগুলিতে কাটছে
লেসার

2

পূর্ণ-স্ক্রিন ফ্রেমের পুনঃনির্দেশ এবং অনুরূপ জিনিসগুলির জন্য আমার দুটি পদ্ধতি রয়েছে। উভয়ই মোবাইল এবং ডেস্কটপে সূক্ষ্ম কাজ করে।

নোট করুন এটি সম্পূর্ণ ক্রস ব্রাউজারে কাজ করছে, বৈধ HTML ফাইল। শুধু পরিবর্তন titleএবং srcআপনার প্রয়োজনের জন্য।
আপনার <meta charset>যদি অ-এসসিআইআই অক্ষর না থাকে তবে আপনি বাদ পড়ার বিষয়টি বিবেচনা করতে পারেন।

1. এটি আমার প্রিয়:

<!DOCTYPE html>
<meta charset=utf-8>
<title> Title-1 </title>
<meta name=viewport content="width=device-width">
<style>
 html, body, iframe { height:100%; width:100%; margin:0; border:0; display:block }
</style>
<iframe src=src1></iframe>

<!-- More verbose CSS for better understanding:
  html   { height:100% }
  body   { height:100%; margin:0 }
  iframe { height:100%; border:0; display:block; width:100% } -->

বা 2. এরকম কিছু , সামান্য খাটো:

<!DOCTYPE html>
<meta charset=utf-8>
<title> Title-2 </title>
<meta name=viewport content="width=device-width">
<iframe src=src2 style="position:absolute; top:0; left:0; width:100%; height:100%; border:0">
</iframe>


দ্রষ্টব্য :
উপরোক্ত উদাহরণগুলি রক্ষণশীল হতে ব্যবহারগুলি এড়িয়ে চলুন height:100vhকারণ পুরানো ব্রাউজারগুলি এটি জানেন না (সম্ভবত এই দিনগুলি মোটা করুন) এবং মোবাইল ব্রাউজারগুলিতে height:100vhসর্বদা সমান হয় height:100%না (সম্ভবত এখানে প্রযোজ্য নয়)। অন্যথায়, vhজিনিসগুলি কিছুটা সরল করে, তাই

৩. এটি ভিএইচ ব্যবহার করে একটি উদাহরণ (আমার পছন্দ নয়, সামান্য সুবিধার সাথে কম সুসংগত)

<!DOCTYPE html>
<meta charset=utf-8>
<title> Title-3 </title>
<meta name=viewport content="width=device-width">
<style>
 body { margin:0 }
 iframe { display:block; width:100%; height:100vh; border:0 }
</style>
<iframe src=src3></iframe>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.