Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8576641
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 11, 20262026-06-11T19:58:13+00:00 2026-06-11T19:58:13+00:00

In Javascript or jQuery, I want to calculate the width a specific SPAN element

  • 0

In Javascript or jQuery, I want to calculate the width a specific SPAN element would be if its parent were infinitely large? (ie its “prefered” width)

What is the cleanest way to do this?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-11T19:58:15+00:00Added an answer on June 11, 2026 at 7:58 pm

    The best way I can think of is to actually clone and append the span to the document, in an infinitely large container, and get its width via jQuery.

    HTML:

    <span id="myspan">
    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ultricies pulvinar felis, nec posuere lectus mattis et. Aliquam erat volutpat. Donec non turpis vitae nunc placerat scelerisque. Nunc scelerisque lobortis lacus at hendrerit. Curabitur convallis euismod congue. Sed venenatis pulvinar magna vel cursus. Sed eleifend mi eget mi fringilla non euismod arcu venenatis. Proin interdum scelerisque diam. In ut nisi id sem imperdiet euismod. Duis vitae lorem ut mauris auctor vehicula non vel risus.
    </span>
    

    JS:

    function getPrefferedWidth($el){
        var clone = $el.clone(),
        parent = $el && $el.parent().length>0 ? $el.parent() : $('body'),
        container = $(document.createElement('div')),
        wrapper = $(document.createElement('div'));
    
        container.css({overflow: 'visible',width: '10000000px'});
        wrapper.css({overflow: 'hidden', width: 0});
    
        container.append(clone);
        wrapper.append(container);
        parent.append(wrapper);
    
        var width = clone.width();
        wrapper.remove();
    
        return width;
    }
    $(document).ready(function(){
        alert(getPrefferedWidth($('#myspan')));
    });
    

    Now the fact that css does not allow you to have infinite width, and if you span contains inline text, you could use the css rule white-space: nowrap. This way there will be no line-breaks on your span and it will stretch horizontally towards infinity! It might be cleaner:

    function getPrefferedWidth($el){
        var clone = $el.clone(),
        parent = $el && $el.parent().length>0 ? $el.parent() : $('body'),
        container = $(document.createElement('div'));
    
        clone.css({'white-space':'nowrap'});
        container.css({overflow: 'hidden', width: 0, height: 0});
    
        container.append(clone);
        parent.append(container);
    
        var width = clone.width();
        container.remove();
        return width;
    }
    $(document).ready(function(){
        alert(getPrefferedWidth($('#myspan')));
    });​
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Okay, I want some jQuery/JavaScript to show an yellow background-color when its checked. I
I want to change an element's class using javascript/jQuery if the inner HTML of
I want to use javascript / jquery to determine if an xml file exists.
I want to write the following C# code equivalent in JavaScript/jQuery (x == 0
Hello all I am working on javascript jquery and svg.I want to ask a
Is it possible to trigger copy event from JavaScript/jQuery? I want to simulate copy
I want jQuery or PHP code tell the visitor if the Javascript is disabled.
I want to implement the looping through the pictures with HTML, CSS, Jquery/Javascript in
i want to enable facebox jquery using javascript. here in normal html <a href=stairs.jpg
I want change following javascript code to jquery code, How is it? With done

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.