前端經典筆試題(騰訊前端,三欄布局)


前端經典筆試題(騰訊前端,三欄布局)

舊公司辭職的工作已經做得七七八八了,今天去了一家公司招聘會,周末的招聘會,說明還是有心要找人的。

剛去到,感覺人特別的多。不過一個小時的筆試過后人已經見少了。

其中有一首題,覺得特別經典,當時在搜索筆試題時有見過,源於騰訊的一道題。當時感覺純筆頭寫有紕漏,在此重新寫一篇。

實現一個三欄布局的網頁,中間部分要自適應寬度並且優先加載。左邊寬150px;右邊欄寬200px;

 

我的思路:既然左右有固定寬度,當然要設置了。中間優先加載,按照HTML順序解釋的原則,即中間放在文檔前面。而中間放在前又會影響文檔流的布局,所以在此改變一下元素的相對位置即可,解法應該有不少,解法網上能搜索到的不少,在此把自己的思路記錄下來。

 

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4    <style>
 5            div{float:left;}
 6            #left{width:150px;position:absolute;left:0px;}
 7            #right{width:200px;float:right;}
 8            #middle{position:relative;left:150px;}
 9        </style>
10 </head>
11 <body>
12     <div id="middle">
13             middle;middle;
14     </div>
15     <div id="left">left</div>
16     <div id="right">right</div>
17 </body>
18 </html>

 

V2.0  中間適應寬度

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4    <style>
 5            body{margin:0; padding:0;}
 6            #left{float:left;width:150px;background:red;}
 7            #right{float:right;width:200px;background:green;}
 8            #middle{position:absolute;left:150px;right:200px;word-wrap:break-word;background:blue;}
 9        </style>
10 </head>
11 <body>
12     <div id="middle">
13             middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;
14             middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;
15     </div>
16     <div id="left">left</div>
17     <div id="right">right</div>
18 </body>
19 </html>

 

 V 3.0 中間適應寬度,整體適應高度

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4    <style>
 5         body{margin:0; padding:0;}
 6        #left{width:150px;position:absolute;left:0;top:0;}
 7        #right{width:200px;position:absolute;right:0; top:0;}
 8        #middle{word-wrap:break-word;}
 9        
10 
11      #backLeft{background:red;padding-left:150px;}       
12      #backMiddle{background:blue;padding-right:200px;}
13      #backRight{background:green;}
14        </style>
15 </head>
16 <body>
17              <div id="backLeft">
18                 <div id="backMiddle">
19                     <div id="backRight">
20                 <div id="middle">
21                             middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;
22                             middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;middle;
23                             <p>middle;</p>
24                             <p>middle;</p>
25                             <p>middle;</p>
26                             <p>middle;</p>
27                             <p>middle;</p>
28                             <p>middle;</p>
29                             <p>middle;</p>
30                             <p>middle;</p>
31                             <p>middle;</p>
32                             <p>middle;</p>
33                             <p>middle;</p>
34                             <p>middle;</p>
35                             <p>middle;</p>
36                             <p>middle;</p>
37                             <p>middle;</p>
38                 </div>    
39                 <div id="right">right</div>
40                     <div id="left">left</div>
41                     </div>    
42                 </div>    
43              </div>                        
44 </body>
45 </html>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM