การตั้งค่าความกว้างเป็นเปอร์เซ็นต์โดยใช้ jQuery


87

ฉันจะกำหนดความกว้างของ div เป็นเปอร์เซ็นต์โดยใช้ jQuery ได้อย่างไร

คำตอบ:


135

การใช้ฟังก์ชันความกว้าง :

$('div#somediv').width('70%');

จะเปลี่ยน:

<div id="somediv" />

เข้าสู่:

<div id="somediv" style="width: 70%;"/>

3
ฉันมีความกว้างในตัวแปร! ฉันจะทำให้เป็น% width ได้อย่างไร?
hemnath mouli

2
@hemnathmouli jQuery ("div # somediv") ความกว้าง (myvar + "%");
Zorgatone

ฉันมีองค์ประกอบที่มีความกว้าง 24% การตั้งค่าความกว้างตามที่คุณแนะนำเป็น 11% ทำให้ฉันมีความกว้าง 33% แทน ฉันคิดว่ามันกำลังเพิ่มความกว้างให้กับความกว้างที่มีอยู่ แต่อย่างที่คุณเห็น 24 + 11 = 35 และไม่ใช่ 33 คุณพอจะมีความคิดไหมว่าทำไมถึงเกิดเหตุการณ์นี้ขึ้น
Eugene

ฉันรู้ว่านี่เป็นโพสต์เก่า แต่ฉันเพิ่งเจอมันเพราะมันเป็นผลลัพธ์แรกใน google ฉันสังเกตว่าฟังก์ชัน css () เร็วกว่า width () เล็กน้อยบางทีฉันอาจจะผิด
Dohab

1
ผมพยายามที่จะกำหนดความกว้างโดยใช้แต่องค์ประกอบเก็บรับชุด.width("20%") width: 24%หลังจากขุดดูเอกสารปรากฎว่าสิ่งนี้เกี่ยวข้องกับbox-sizingคุณสมบัติCSS การใช้.css({'width':"20%"})จะหลีกเลี่ยงการปรับค่านี้
khartnett

14

เหมนาท

หากตัวแปรของคุณเป็นเปอร์เซ็นต์:

var myWidth = 70;
$('div#somediv').width(myWidth + '%');

หากตัวแปรของคุณมีหน่วยเป็นพิกเซลและคุณต้องการให้ค่าเปอร์เซ็นต์ของพาเรนต์สูงขึ้น:

var myWidth = 140;
var myPercentage = (myWidth / $('div#somediv').parent().width()) * 100;
$('div#somediv').width(myPercentage + '%');

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.